CN102195985B - System and method for controlling network load of presence service - Google Patents

System and method for controlling network load of presence service Download PDF

Info

Publication number
CN102195985B
CN102195985B CN2011101301981A CN201110130198A CN102195985B CN 102195985 B CN102195985 B CN 102195985B CN 2011101301981 A CN2011101301981 A CN 2011101301981A CN 201110130198 A CN201110130198 A CN 201110130198A CN 102195985 B CN102195985 B CN 102195985B
Authority
CN
China
Prior art keywords
load
priority
module
flow control
user
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.)
Expired - Fee Related
Application number
CN2011101301981A
Other languages
Chinese (zh)
Other versions
CN102195985A (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.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
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 Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN2011101301981A priority Critical patent/CN102195985B/en
Publication of CN102195985A publication Critical patent/CN102195985A/en
Application granted granted Critical
Publication of CN102195985B publication Critical patent/CN102195985B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

The invention discloses a system and a method for controlling the network load of a presence service. The system comprises an Internet protocol (IP) multimedia subsystem network (IMS), a presence server and the like. The presence server consists of a user and service management module, a user and service data storage module, a PUBLISH message distribution module, a load control module, a NOTIFY message transmission module, a load monitoring module and the like, wherein the load control module comprises a state updating caching sub-module, a traffic control sub-module, a traffic rate generation sub-module and the like. The invention also provides the method for controlling the network load of the presence service based on the system. Based on the load measurement of an external network entity, traffic control is performed on PUBLISH messages of users according to priorities, thereby realizing effective control over NOTIFY messages of the presence service and finally ensuring the normal running of a service network. The system and the method provided by the invention are simple, convenient and practicable, and the service using satisfaction degree of the users can be effectively increased.

Description

A kind of to presenting the system and method that business network load is controlled
Technical field
The present invention relates to a kind ofly belong to the telecommunication technology field to presenting the system and method that business network load is controlled, particularly belong to IP multimedia sub-network IMS technical field.
Background technology
Presenting professional main feature of (presence) is " one-to-many message informing pattern ".When User Status changed, presence server need send to all online subscribers with the state information that changes.In actual applications, a user often has a lot of online subscribers, when number of users more for a long time, presence server can produce very heavy load to network.Studies show that in the IMS network, the professional related load of presence has accounted for 50% of service call conversation control function S-CSCF total load among the IP Multimedia System network IMS.The most of load that the presence distribution of traffic be the analysis showed that the presence business is all caused by the notice NOTIFY.Therefore, only control the notice NOTIFY load in the presence business, could the fine load of controlling the IMS network.
The RFC 3865 of Internet engineering duty group IETF has proposed a kind of notice NOTIFY load controlling mechanism based on time-delay.When each state of user changed, the presence server can start a timer, had only behind timer expiry, just the state information that changes can be sent to corresponding subscriber.If state of user changes again before timer expiry, then replace older state information with newer state.Final sends up-to-date user state information to the subscriber.Use the effect of constant time lag timer control notice NOTIFY mode of loading unsatisfactory: when the load of presence server is low, can experiences the user and cause unnecessary influence; When load was higher, this mode can not limit the load total amount that the presence server produces network again fully.Therefore, how to design a kind of NOTIFY load controlling mechanism of notifying flexibly, at restriction presence server network is produced under the prerequisite of load total amount, shorten the time-delay of each user notification NOTIFY as far as possible, experiencing thereby improve the user, is a technical barrier that urgent need will solve.
Summary of the invention
In view of this, the objective of the invention is to present in the business network existing, provide a kind of to presenting the system and method that business network load is controlled, reduction presents the service announcements NOTIFY to the tremendous influence of network payload, improves user's professional satisfaction simultaneously.
In order to achieve the above object, the present invention proposes that a kind of described system comprises IP Multimedia System network IMS, presence server etc. at least to presenting the system that business network load is controlled, described presence server comprises following functional module:
User and service management module, function are to realize presenting the signatory and cancellation of user of business, the subscription of subscriber presentation state and cancellation, and the setting of User Priority and change are handled, and the management of interface realization to the load control module etc. is provided; User Priority is by user oneself setting or by how much the come automatic setting of presence server according to subscriber presentation state subscriber quantity;
User and business datum storage module, in order to preserving user's service profile, the User Priority state information, the user presents state information in real time, subscriber presentation state subscribing relationship information etc.; Subscriber presentation state subscribing relationship information i.e. this subscriber presentation state information of being ordered by which user;
Issue PUBLISH distribution module receives the issue PUBLISH that external network entity sends over, and according to the address of issuing external network entity entrained in the PUBLISH, the issue PUBLISH is transmitted to corresponding load control module;
The load control module, load information according to the external network entity of load monitoring module feedback, the issue PUBLISH of receiving is carried out flow control, send to notice NOTIFY sending module having carried out the issue PUBLISH after the flow control then; According to the external network situation, presence server can have a plurality of load control modules;
Notice NOTIFY sending module by inquiring user and business datum storage module, obtains the subscribing relationship information of subscriber presentation state; For every issue PUBLISH receiving, search all subscribers that are present condition that it comes source user, and generate and send corresponding notice NOTIFY to each online subscriber;
The load monitoring module, the notice NOTIFY that reception notification NOTIFY module sends is transmitted to corresponding external network entity; Load condition to external network entity is monitored, and the load information of the external network entity of monitoring acquisition is fed back to the load control module; According to the external network situation, presence server can have a plurality of load monitoring modules;
The load control module of described presence server comprises following submodule:
Interface sub-module, the interactive function of other information between realization load control module and other modules of presence server except the issue PUBLISH;
Issue PUBLISH classification transmission submodule, according to issuing the priority that PUBLISH comes source user, the state that the issue PUBLISH of same priority is forwarded to corresponding priority upgrades cache sub-module;
State upgrades cache sub-module, the issue PUBLISH of receiving is carried out buffer memory, if user's the present condition that is changes in the process that buffer memory is waited for, then replace this user's old issue PUBLISH with the new issue PUBLISH that derives from this user; After the issue PUBLISH is sent by the flow control submodule, just from spatial cache, delete; Described load control module has a plurality of states to upgrade cache sub-module, and what of its number are identical with the number of levels of User Priority; A state upgrades the issue PUBLISH that the cache sub-module alignment processing derives from same priority users;
The flow control submodule, generate the indicated flow control parameter of submodule according to flow rate, to the issue PUBLISH carry out the flow control of respective rate, and carried out the issue PUBLISH after the flow control send to the issue PUBLISH compile the transmission submodule; Described load control module has a plurality of flow control submodules, and what of its number are identical with the number of levels of User Priority; A flow control submodule alignment processing derives from the issue PUBLISH of same priority users;
Flow rate generates submodule, load information according to the external network entity of described load monitoring module feedback, calculate the flow control parameter of each priority issue PUBLISH, and the flow control submodule of this flow control parameter notice respective priority;
The issue PUBLISH compiles the transmission submodule, receives the issue PUBLISH from each flow control submodule, sends to the notice NOTIFY sending module of described presence server after compiling;
In order to achieve the above object, the invention allows for a kind ofly to presenting the method that business network load is controlled, described method comprises following operating procedure:
(1) is divided into some different priority presenting service-user; Division methods can be presence server according to the automatic setting that how much comes of subscriber presentation state subscriber quantity, the User Priority that subscriber's quantity is more many is more low, on the contrary the more few User Priority of subscriber's quantity is more high; Perhaps the user oneself sets or selected priority as required; The division result of User Priority is kept in user and the business datum memory module;
(2) each load monitoring module of presence server was monitored the load of the external network entity of correspondence according to the time interval of default, and the load information of the external network entity that monitoring is obtained feeds back to corresponding load control module;
(3) after the flow rate in the load control module generates the load information of submodule by interface sub-module acquisition external network entity, calculate the flow control parameter of each flow control submodule;
(4) which external network entity issue PUBLISH distribution module namely comes from according to the source entity that comes of issue PUBLISH, and this issue PUBLISH is forwarded to the load control module corresponding with this external network entity;
(5) after the load control module is carried out load control to the issue PUBLISH of receiving, be transmitted to notice NOTIFY sending module;
(6) notice NOTIFY sending module is according to the source user that comes of issue PUBLISH, inquire about the subscriber of this issue PUBLISH source subscriber presentation state to user and business datum storage module, generate a notice NOTIFY for each online subscriber; The external network entity of notifying the NOTIFY sending module to originate according to this issue PUBLISH then sends to the notice NOTIFY that generates and the corresponding load monitoring module of this external network entity;
(7) the load monitoring module sends to the external network entity that links with it to the notice NOTIFY of receiving;
The load monitoring module of the presence server described in the described step (2) is to comprise the steps: to the concrete grammar that external network entity carries out load monitoring
(21) according to the time interval of setting, the load monitoring module is randomly drawed a notice NOTIFY, adds load report OC request message head in the above, and the concrete form of load report OC request message head is:
OC:Req
;oc_tag
Wherein, Req represents load report OC request message, and oc_tag is 10 character strings that generate at random, is used for a load report of unique identification OC request message;
(22) after external network entity is received this notice NOTIFY that has load report OC request message head, in the 200OK message of returning, add load report OC response message head, perhaps a newly-built sip message that has load report OC response message head returns to the load monitoring module, and the concrete form of described load report OC response message head is:
OC:Rsp
;oc
;oc_type
;oc_validity
;oc_tag
Wherein, Rsp represents load report OC response message, and oc represents concrete load information, oc_type represents the type of load, oc_validity represents the effective time of this load information, and the oc_tag in oc_tag and the load report OC request message head is identical, is used for related request and response message.
To generate the concrete grammar that submodule calculates the flow control parameter of each flow control submodule be to comprise the steps: to flow rate in the described step 3
(31) flow rate generates submodule according to the load information of the external network entity that obtains, and the load information of external network entity is handled, and concrete grammar is: if load type oc_type is notice NOTIFY access speed, then do not deal with; If load type oc_type is the CPU usage of external network entity, then the CPU usage that oc is represented is converted into corresponding notice NOTIFY access speed; If load type oc_type is the notice NOTIFY spatial cache occupancy of external network entity, then the notice NOTIFY spatial cache occupancy that oc is represented is converted into corresponding notice NOTIFY access speed;
(32) flow rate generates submodule according to the notice NOTIFY access speed that obtains in the step (31), and division information and the subscriber presentation state subscriber quantity information of the User Priority that obtains by inquiring user and business datum memory module, for each flow control submodule calculates the flow control parameter; Concrete computational methods are:
Method one: if user's priority is selected by user oneself, then computational process is as follows:
If total total N priority level, N be one greater than 1 natural number, the 1st priority is limit priority.It is that each flow control submodule calculates the preliminary parameter of flow control according to following formula that flow rate generates submodule,
Vi = min ( Si , Ci ) Ti
In the following formula, i is the subscript of expression priority, Vi represents the preliminary parameter of flow control of the flow control submodule of i priority, Si represents the size of spatial cache in the state cache updating submodule of i priority, Ci represents the quantity of i priority online user in the present presence server, min (Si, Ci) minimum value between Si and the Ci is asked in expression, and Ti represents the maximum allowable delay that i priority users issue PUBLISH is handled.
Flow rate generates submodule by inquiring user and business datum storage module, all users are added up, calculate the mean value of subscriber presentation state subscriber quantity, then the notice NOTIFY access speed that obtains in the step (31) divided by this mean value, be converted into issue PUBLISH access speed, represent with R.
If
Figure GSB00000580169800052
If the preliminary parameter sum of the i.e. flow control of all priority is not more than issue PUBLISH access speed, then be the flow control submodule calculated flow rate control parameter of each priority according to following formula,
Ui = R Σ i = 1 N Vi × Vi
Ui represents the flow control parameter of the flow control submodule of i priority in the following formula.
If If the preliminary parameter sum of the i.e. flow control of all priority is greater than issue PUBLISH access speed, then distribute issue PUBLISH access speed according to the principle that preferentially satisfies high-priority users, if the preliminary V parameter of the i.e. flow control of the 1st priority 1 is greater than R, then allow the flow control parameter U1=R of the 1st priority, namely issue PUBLISH access speed R is all distributed to the flow control submodule of the 1st priority; Otherwise, allow U1=V1, namely allow the value of flow control parameter of the 1st priority equal the value of the preliminary parameter of flow control of the 1st priority.At this moment the value of remaining issue PUBLISH access speed is that R deducts U1, according to mentioned above principle, remaining issue PUBLISH access speed is distributed successively according to priority again, up to all distributing.
Method two: if user's priority is to determine that according to subscriber's quantity of subscriber presentation state then computational process is as follows by presence server:
If always have M priority level, M be one greater than 1 natural number, then flow rate generation submodule is the notice NOTIFY access speed mean allocation that obtains in the step (31) M part, every part value is represented with W, be the flow control submodule calculated flow rate control parameter of each priority then according to following formula
Ui = W Qi
In the following formula, i is the subscript of expression priority, and Ui represents the flow control parameter of the flow control submodule of i priority, and Qi represents the mean value of the subscriber's quantity that is present condition of i priority users.
(33) flow rate generates the flow control parameter that submodule calculates step (32) and sends to corresponding flow control submodule;
The load control module is specifically to comprise the steps: to the method that the issue PUBLISH of receiving carries out load control in the described step (5)
(51) the issue PUBLISH classification transmission submodule of load control module comes the priority of source user according to the issue PUBLISH, and this issue PUBLISH is forwarded to state renewal cache sub-module that should priority;
(52) state renewal cache sub-module is carried out buffer memory to the issue PUBLISH of receiving, if in the time that buffer memory is waited for, user's the present condition that is changes, and then replaces this user's old issue PUBLISH with the new issue PUBLISH that derives from this user; If spatial cache is full, and the issue PUBLISH of newly receiving do not have corresponding old issue PUBLISH in spatial cache, then abandons the issue PUBLISH that this is newly received; After the issue PUBLISH is sent by the flow control submodule, just from spatial cache, delete;
(53) the flow control submodule generates the flow control parameter that submodule distributes according to flow rate, generates token, and token is stored in the token bucket of a setting capacity; If token bucket is full, then newly-generated token is dropped; If there is token to use in the token bucket, then the flow control submodule upgrades from state and takes out an issue PUBLISH the cache sub-module, sends to the issue PUBLISH and compiles the transmission submodule, simultaneously token of deletion from token bucket;
(54) the issue PUBLISH compiles to send and sends to notice NOTIFY sending module after submodule compiles the issue PUBLISH of receiving;
Beneficial effect of the present invention is: utilize system and method for the present invention, can effectively control to present and notify the influence of NOTIFY to network payload in the business network, guarantee the normal operation of business network.Of the present invention method is simple, can improve to present the satisfaction that service-user uses business.
Description of drawings
Fig. 1 is that the present invention is a kind of to presenting the network diagram of the system that business network load controls.
Fig. 2 is the structural representation of the presence server in the embodiment of the invention.
Fig. 3 is the structural representation of the load control module of presence server in the embodiment of the invention.
To be that the present invention is a kind of carry out the flow diagram of control method to presenting business network load to Fig. 4.
Embodiment
For making the purpose, technical solutions and advantages of the present invention clearer, the present invention is described in further detail below in conjunction with accompanying drawing.
Referring to Fig. 1, introduce a kind of to presenting the system that business network load is controlled that the present invention proposes, this system comprises IP Multimedia System network IMS, presence server etc. at least.In the networking of reality, a presence server can connect a plurality of service call conversation control function S-CSCF entities.
In the present invention, external network entity refers to that service call conversation control function S-CSCF entity among the IP Multimedia System network IMS or other and S-CSCF have the network entity of similar functions.
Referring to Fig. 2, to see clearlyer for the modular structure that makes presence server, same external network entity has been drawn respectively twice at Fig. 2 the right and left.Presence server comprises following functional module:
User and service management module, function are to realize presenting the signatory and cancellation of user of business, the subscription of subscriber presentation state and cancellation, and the setting of User Priority and change are handled, and the management of interface realization to the load control module etc. is provided; User Priority is by user oneself setting or by how much the come automatic setting of presence server according to subscriber presentation state subscriber quantity;
User and business datum storage module, in order to preserving user's service profile, the User Priority state information, the user presents state information in real time, subscriber presentation state subscribing relationship information etc.; Subscriber presentation state subscribing relationship information i.e. this subscriber presentation state information of being ordered by which user;
Issue PUBLISH distribution module receives the issue PUBLISH that external network entity sends over, and according to the address of issuing external network entity entrained in the PUBLISH, the issue PUBLISH is transmitted to corresponding load control module;
The load control module, load information according to the external network entity of load monitoring module feedback, the issue PUBLISH of receiving is carried out flow control, send to notice NOTIFY sending module having carried out the issue PUBLISH after the flow control then; According to the external network situation, presence server can have a plurality of load control modules; In the embodiment shown in Figure 2, have 3 load control modules, corresponding with 3 external network entity institutes respectively.
Notice NOTIFY sending module by inquiring user and business datum storage module, obtains the subscribing relationship information of subscriber presentation state; For every issue PUBLISH receiving, search all subscribers that are present condition that it comes source user, and generate and send corresponding notice NOTIFY to online each subscriber;
The load monitoring module, the notice NOTIFY that reception notification NOTIFY module sends is transmitted to corresponding external network entity; Load condition to external network entity is monitored, and the load information of the external network entity of monitoring acquisition is fed back to the load control module; According to the external network situation, presence server can have a plurality of load monitoring modules; In the embodiment shown in Figure 2, have 3 load monitoring modules, corresponding with 3 external network entity institutes respectively.
Referring to Fig. 3, the load control module of presence server comprises following submodule among the embodiment:
Interface sub-module, the interactive function of other information between realization load control module and other modules of presence server except the issue PUBLISH;
Issue PUBLISH classification transmission submodule, according to issuing the priority that PUBLISH comes source user, the state that the issue PUBLISH of same priority is forwarded to corresponding priority upgrades cache sub-module;
State upgrades cache sub-module, the issue PUBLISH of receiving is carried out buffer memory, if user's the present condition that is changes in the process that buffer memory is waited for, then replace this user's old issue PUBLISH with the new issue PUBLISH that derives from this user; After the issue PUBLISH is sent by the flow control submodule, just from spatial cache, delete; Described load control module has a plurality of states to upgrade cache sub-module, and what of its number are identical with the number of levels of User Priority; A state upgrades the issue PUBLISH that the cache sub-module alignment processing derives from same priority users; In the embodiment shown in Figure 2, the user is divided into 3 priority, thereby to there being 3 states to upgrade cache sub-module.
The flow control submodule, generate the indicated flow control parameter of submodule according to flow rate, to the issue PUBLISH carry out the flow control of respective rate, and carried out the issue PUBLISH after the flow control send to the issue PUBLISH compile the transmission submodule; Described load control module has a plurality of flow control submodules, and what of its number are identical with the number of levels of User Priority; A flow control submodule alignment processing derives from the issue PUBLISH of same priority users; In the embodiment shown in Figure 2, the user is divided into 3 priority, thereby to 3 flow control submodules should be arranged.
Flow rate generates submodule, load information according to the external network entity of described load monitoring module feedback, calculate the flow control parameter of each priority issue PUBLISH, and the flow control submodule of this flow control parameter notice respective priority;
The issue PUBLISH compiles the transmission submodule, receives the issue PUBLISH from each flow control submodule, sends to the notice NOTIFY sending module of described presence server after compiling;
Referring to Fig. 4, to introduce proposed by the invention a kind ofly to presenting the method that business network load is controlled, this method comprises following operating procedure:
(1) is divided into some different priority presenting service-user;
Division methods can be that presence server is according to the automatic setting that how much comes of subscriber presentation state subscriber quantity, the User Priority that subscriber's quantity is more many is more low, otherwise the User Priority that subscriber's quantity is more few is more high, such as: set 3 priority, subscriber's quantity is the 1st priority between 0~50, subscriber's quantity is the 2nd priority between 50~100, subscriber's quantity greater than 100 be the 3rd priority;
Perhaps the user oneself sets or selected priority as required, such as user's selected oneself priority when the signing service; The division result of User Priority is kept in user and the business datum memory module;
(2) each load monitoring module of presence server was monitored the load of the external network entity of correspondence according to the time interval of default, and the load information of the external network entity that monitoring is obtained feeds back to corresponding load control module; Wherein the time interval of default can be adjusted according to the situation of network, such as being 1 minute or 10 minutes.
(3) after the flow rate in the load control module generates the load information of submodule by interface sub-module acquisition external network entity, calculate the flow control parameter of each flow control submodule;
(4) which external network entity issue PUBLISH distribution module namely comes from according to the source entity that comes of issue PUBLISH, and this issue PUBLISH is forwarded to the load control module corresponding with this external network entity;
(5) after the load control module is carried out load control to the issue PUBLISH of receiving, be transmitted to notice NOTIFY sending module;
(6) notice NOTIFY sending module is according to the source user that comes of issue PUBLISH, inquire about the subscriber of this issue PUBLISH source subscriber presentation state to user and business datum storage module, generate a notice NOTIFY for each online subscriber; The external network entity of notifying the NOTIFY sending module to originate according to this issue PUBLISH then sends to the notice NOTIFY that generates and the corresponding load monitoring module of this external network entity;
(7) the load monitoring module sends to the external network entity that links with it to the notice NOTIFY of receiving;
The load monitoring module of the presence server described in this method step (2) is to comprise the steps: to the concrete grammar that external network entity carries out load monitoring
(21) according to the time interval of setting, the load monitoring module is randomly drawed a notice NOTIFY, adds load report OC request message head in the above, and the concrete form of load report OC request message head is:
OC:Req
;oc_tag
Wherein, Req represents load report OC request message, and oc_tag is 10 character strings that generate at random, is used for a load report of unique identification OC request message;
Such as:
OC:Req
;oc_tag=AH8TS90JK6
(22) after external network entity is received this notice NOTIFY that has load report OC request message head, in the 200OK message of returning, add load report OC response message head, perhaps a newly-built sip message that has load report OC response message head returns to the load monitoring module, and the concrete form of described load report OC response message head is:
OC:Rsp
;oc
;oc_type
;oc_validity
;oc_tag
Wherein, Rsp represents load report OC response message, oc represents concrete load information, oc_type represents the type of load, such as: oc_type=1 represents to notify NOTIFY access speed, oc_type=2 represents the CPU usage of external network entity, and oc_type=3 represents notice NOTIFY spatial cache occupancy in the external network entity; Oc_validity represents the effective time of this load information, and unit is millisecond, and the oc_tag in oc_tag and the load report OC request message head is identical, is used for related request and response message.
Be exemplified below:
Example 1:
OC:Rsp
;oc=500
;oc_type=1
;oc_validity=60000
;oc_tag=AH8TS90JK6
What this load report OC response message head illustrated is: the load type of external network entity is notice NOTIFY access speed, and occurrence is 500 message per seconds, and valid expiration date is 60000 milliseconds.
Example 2:
OC:Rsp
;oc=0.80
;oc_type=2
;oc_validity=60000
;oc_tag=AH8TS90JK6
What this load report OC response message head illustrated is: the load type of external network entity is the CPU usage of external network entity, and occurrence is 80%, and valid expiration date is 60000 milliseconds.
Example 3:
OC:Rsp
;oc=0.85
;oc_type=3
;oc_validity=60000
;oc_tag=AH8TS90JK6
What this load report OC response message head illustrated is: the load type of external network entity is notice NOTIFY spatial cache occupancy in the external network entity, and occurrence is 85%, and valid expiration date is 60000 milliseconds.
The concrete grammar that the middle flow rate generation of this method step (3) submodule calculates the flow control parameter of each flow control submodule is to comprise the steps:
(31) flow rate generates submodule according to the load information of the external network entity that obtains, and the load information of external network entity is handled, and concrete grammar is: if load type oc_type is notice NOTIFY access speed, then do not deal with;
If load type oc_type is the CPU usage of external network entity, then the CPU usage that oc is represented is converted into corresponding notice NOTIFY access speed;
Be exemplified below:
Suppose that at T constantly, the CPU usage of the external network entity that the load monitoring module obtains is 95%, and at T this monitoring periods before the moment, the average access speed of the notice NOTIFY that the load monitoring module counts is 400 per seconds; The target CPU usage of case of external network entity is 90% in addition, and then at T this monitoring periods after the moment, the access speed of external network entity notice NOTIFY can be scaled
Figure GSB00000580169800111
The bar per second.
If load type oc_type is the notice NOTIFY spatial cache occupancy of external network entity, then the notice NOTIFY spatial cache occupancy that oc is represented is converted into corresponding notice NOTIFY access speed;
Be exemplified below:
Suppose at T constantly, the notice NOTIFY spatial cache occupancy of the external network entity that the load monitoring module obtains is 95%, and at T this monitoring periods before the moment, the average access speed of the notice NOTIFY that the load monitoring module counts is 400 per seconds; The target of case of external network entity notice NOTIFY spatial cache occupancy is 90% in addition, and then at T this monitoring periods after the moment, the access speed of external network entity notice NOTIFY can be scaled 400 × 90 % 95 % ≈ 379 The bar per second.
(32) flow rate generates submodule according to the notice NOTIFY access speed that obtains in the step (31), and division information and the subscriber presentation state subscriber quantity information of the User Priority that obtains by inquiring user and business datum memory module, for each flow control submodule calculates the flow control parameter; Concrete computational methods are:
Method one: if user's priority is selected by user oneself, then computational process is as follows:
If total total N priority level, N be one greater than 1 natural number, the 1st priority is limit priority.It is that each flow control submodule calculates the preliminary parameter of flow control according to following formula that flow rate generates submodule,
Vi = min ( Si , Ci ) Ti
In the following formula, i is the subscript of expression priority, Vi represents the preliminary parameter of flow control of the flow control submodule of i priority, Si represents the size of spatial cache in the state cache updating submodule of i priority, Ci represents the quantity of i priority online user in the present presence server, min (Si, Ci) minimum value between Si and the Ci is asked in expression, and Ti represents the maximum allowable delay that i priority users issue PUBLISH is handled.
Be exemplified below:
Suppose the maximum allowable delay T that the 2nd priority users issue PUBLISH is handled 2Be 5 seconds, spatial cache S 2Be 1000, the 2 priority online user number C 2Be 100, the preliminary V parameter of flow control then 2Be 20.
Flow rate generates submodule by inquiring user and business datum storage module, all users are added up, calculate the mean value of subscriber presentation state subscriber quantity, then the notice NOTIFY access speed that obtains in the step (31) divided by this mean value, be converted into issue PUBLISH access speed, represent with R.
If
Figure GSB00000580169800121
If the preliminary parameter sum of the i.e. flow control of all priority is not more than issue PUBLISH access speed, then be the flow control submodule calculated flow rate control parameter of each priority according to following formula,
Ui = R Σ i = 1 N Vi × Vi
Ui represents the flow control parameter of the flow control submodule of i priority in the following formula.
Be exemplified below:
Suppose V 1=20, V 2=10, V 3=5, R=140 then tries to achieve U 1=80, U 2=40, U 3=20.
If
Figure GSB00000580169800123
If the preliminary parameter sum of the i.e. flow control of all priority is greater than issue PUBLISH access speed, then distribute issue PUBLISH access speed according to the principle that preferentially satisfies high-priority users, if the preliminary V parameter of the i.e. flow control of the 1st priority 1 is greater than R, then allow the flow control parameter U1=R of the 1st priority, namely issue PUBLISH access speed R is all distributed to the flow control submodule of the 1st priority; Otherwise, allow U1=V1, namely allow the value of flow control parameter of the 1st priority equal the value of the preliminary parameter of flow control of the 1st priority.At this moment the value of remaining issue PUBLISH access speed is that R deducts U1, according to mentioned above principle, remaining issue PUBLISH access speed is distributed successively according to priority again, up to all distributing.
Be exemplified below:
Example one: suppose V 1=20, V 2=10, V 3=5, R=10 then tries to achieve U 1=10, U 2=0, U 3=0.
Example two: suppose V 1=20, V 2=10, V 3=5, R=25 then tries to achieve U 1=20, U 2=5, U 3=0.
Example three: suppose V 1=20, V 2=10, V 3=5, R=32 then tries to achieve U 1=20, U 2=10, U 3=2.
Method two: if user's priority is to determine that according to subscriber's quantity of subscriber presentation state then computational process is as follows by presence server:
If always have M priority level, M be one greater than 1 natural number, then flow rate generation submodule is the notice NOTIFY access speed mean allocation that obtains in the step (31) M part, every part value is represented with W, be the flow control submodule calculated flow rate control parameter of each priority then according to following formula
Ui = W Qi
In the following formula, i is the subscript of expression priority, and Ui represents the flow control parameter of the flow control submodule of i priority, and Qi represents the mean value of the subscriber's quantity that is present condition of i priority users.
(33) flow rate generates the flow control parameter that submodule calculates step (32) and sends to corresponding flow control submodule;
Be exemplified below:
Suppose W=200, Q 1=10, Q 2=20, Q 3=40, then try to achieve U 1=20, U 2=10, U 3=5
The load control module is specifically to comprise the steps: to the method that the issue PUBLISH of receiving carries out load control in this method step (5)
(51) the issue PUBLISH classification transmission submodule of load control module comes the priority of source user according to the issue PUBLISH, and this issue PUBLISH is forwarded to state renewal cache sub-module that should priority;
(52) state renewal cache sub-module is carried out buffer memory to the issue PUBLISH of receiving, if in the time that buffer memory is waited for, user's the present condition that is changes, and then replaces this user's old issue PUBLISH with the new issue PUBLISH that derives from this user; If spatial cache is full, and the issue PUBLISH of newly receiving do not have corresponding old issue PUBLISH in spatial cache, then abandons the issue PUBLISH that this is newly received; After the issue PUBLISH is sent by the flow control submodule, just from spatial cache, delete;
(53) the flow control submodule generates the flow control parameter that submodule distributes according to flow rate, generates token, and token is stored in the token bucket of a setting capacity; If token bucket is full, then newly-generated token is dropped; If there is token to use in the token bucket, then the flow control submodule upgrades from state and takes out an issue PUBLISH the cache sub-module, sends to the issue PUBLISH and compiles the transmission submodule, simultaneously token of deletion from token bucket;
(54) the issue PUBLISH compiles to send and sends to notice NOTIFY sending module after submodule compiles the issue PUBLISH of receiving.

Claims (6)

1. one kind to presenting the system that business network load is controlled, and described system comprises IP Multimedia System network IMS, presence server at least, it is characterized in that:
Described presence server comprises following functional module:
User and service management module, function are to realize presenting the signatory and cancellation of user of business, the subscription of subscriber presentation state and cancellation, and the setting of User Priority and change are handled, and the management of interface realization to the load control module is provided; User Priority is by user oneself setting or by how much the come automatic setting of presence server according to subscriber presentation state subscriber quantity;
User and business datum storage module, in order to preserving user's service profile, the User Priority state information, the user presents state information in real time, subscriber presentation state subscribing relationship information; Subscriber presentation state subscribing relationship information i.e. this subscriber presentation state information of being ordered by which user;
Issue PUBLISH distribution module receives the issue PUBLISH that external network entity sends over, and according to the address of issuing external network entity entrained in the PUBLISH, the issue PUBLISH is transmitted to corresponding load control module;
The load control module, load information according to the external network entity of load monitoring module feedback, the issue PUBLISH of receiving is carried out flow control, send to notice NOTIFY sending module having carried out the issue PUBLISH after the flow control then; According to the external network situation, presence server can have a plurality of load control modules;
Notice NOTIFY sending module by inquiring user and business datum storage module, obtains the subscribing relationship information of subscriber presentation state; For every issue PUBLISH receiving, search all subscribers that are present condition that it comes source user, and generate and send corresponding notice NOTIFY to each online subscriber;
The load monitoring module, the notice NOTIFY that reception notification NOTIFY module sends is transmitted to corresponding external network entity; Load condition to external network entity is monitored, and the load information of the external network entity of monitoring acquisition is fed back to the load control module; According to the external network situation, presence server can have a plurality of load monitoring modules.
2. according to claim 1 a kind of to presenting the system that business network load is controlled, it is characterized in that: the load control module of described presence server comprises following submodule:
Interface sub-module, the interactive function of other information between realization load control module and other modules of presence server except the issue PUBLISH;
Issue PUBLISH classification transmission submodule, according to issuing the priority that PUBLISH comes source user, the state that the issue PUBLISH of same priority is forwarded to corresponding priority upgrades cache sub-module;
State upgrades cache sub-module, the issue PUBLISH of receiving is carried out buffer memory, if user's the present condition that is changes in the process that buffer memory is waited for, then replace this user's old issue PUBLISH with the new issue PUBLISH that derives from this user; After the issue PUBLISH is sent by the flow control submodule, just from spatial cache, delete; Described load control module has a plurality of states to upgrade cache sub-module, and what of its number are identical with the number of levels of User Priority; A state upgrades the issue PUBLISH that the cache sub-module alignment processing derives from same priority users;
The flow control submodule, generate the indicated flow control parameter of submodule according to flow rate, to the issue PUBLISH carry out the flow control of respective rate, and carried out the issue PUBLISH after the flow control send to the issue PUBLISH compile the transmission submodule; Described load control module has a plurality of flow control submodules, and what of its number are identical with the number of levels of User Priority; A flow control submodule alignment processing derives from the issue PUBLISH of same priority users;
Flow rate generates submodule, load information according to the external network entity of described load monitoring module feedback, calculate the flow control parameter of each priority issue PUBLISH, and the flow control submodule of this flow control parameter notice respective priority;
The issue PUBLISH compiles the transmission submodule, receives the issue PUBLISH from each flow control submodule, sends to the notice NOTIFY sending module of described presence server after compiling.
3. one kind to presenting the method that business network load is controlled, and it is characterized in that: described method comprises following operating procedure:
(1) is divided into some different priority presenting service-user; Division methods can be presence server according to the automatic setting that how much comes of subscriber presentation state subscriber quantity, the User Priority that subscriber's quantity is more many is more low, on the contrary the more few User Priority of subscriber's quantity is more high; Perhaps the user oneself sets or selected priority as required; The division result of User Priority is kept in user and the business datum memory module;
(2) each load monitoring module of presence server was monitored the load of the external network entity of correspondence according to the time interval of default, and the load information of the external network entity that monitoring is obtained feeds back to corresponding load control module;
(3) after the flow rate in the load control module generates the load information of submodule by interface sub-module acquisition external network entity, calculate the flow control parameter of each flow control submodule;
(4) which external network entity issue PUBLISH distribution module namely comes from according to the source entity that comes of issue PUBLISH, and this issue PUBLISH is forwarded to the load control module corresponding with this external network entity;
(5) after the load control module is carried out load control to the issue PUBLISH of receiving, be transmitted to notice NOTIFY sending module;
(6) notice NOTIFY sending module is according to the source user that comes of issue PUBLISH, inquire about the subscriber of this issue PUBLISH source subscriber presentation state to user and business datum storage module, generate a notice NOTIFY for each online subscriber; The external network entity of notifying the NOTIFY sending module to originate according to this issue PUBLISH then sends to the notice NOTIFY that generates and the corresponding load monitoring module of this external network entity;
(7) the load monitoring module sends to the external network entity that links with it to the notice NOTIFY of receiving.
4. according to claim 3 a kind of to presenting the method that business network load is controlled, it is characterized in that: the load monitoring module of the presence server described in the described step (2) is to comprise the steps: to the concrete grammar that external network entity carries out load monitoring
(21) according to the time interval of setting, the load monitoring module is randomly drawed a notice NOTIFY, adds load report OC request message head in the above, and the concrete form of load report OC request message head is:
OC:Req
;oc_tag
Wherein, Req represents load report OC request message, and oc_tag is 10 character strings that generate at random, is used for a load report of unique identification OC request message;
(22) after external network entity is received this notice NOTIFY that has load report OC request message head, in the 200OK message of returning, add load report OC response message head, perhaps a newly-built sip message that has load report OC response message head returns to the load monitoring module, and the concrete form of described load report OC response message head is:
OC:Rsp
;oc
;oc_type
;ocvalidity
;oc_tag
Wherein, Rsp represents load report OC response message, and oc represents concrete load information, oc_type represents the type of load, oc_validity represents the effective time of this load information, and the oc_tag in oc_tag and the load report OC request message head is identical, is used for related request and response message.
5. according to claim 3 a kind of to presenting the method that business network load is controlled, it is characterized in that: the concrete grammar that the middle flow rate generation of described step (3) submodule calculates the flow control parameter of each flow control submodule is to comprise the steps:
(31) flow rate generates submodule according to the load information of the external network entity that obtains, and the load information of external network entity is handled, and concrete grammar is: if load type oc_type is notice NOTIFY access speed, then do not deal with; If load type oc_type is the CPU usage of external network entity, then the CPU usage that oc is represented is converted into corresponding notice NOTIFY access speed; If load type oc_type is the notice NOTIFY spatial cache occupancy of external network entity, then the notice NOTIFY spatial cache occupancy that oc is represented is converted into corresponding notice NOTIFY access speed;
(32) flow rate generates submodule according to the notice NOTIFY access speed that obtains in the step (31), and division information and the subscriber presentation state subscriber quantity information of the User Priority that obtains by inquiring user and business datum memory module, for each flow control submodule calculates the flow control parameter; Concrete computational methods are:
Method one: if user's priority is selected by user oneself, then computational process is as follows:
If total total N priority level, N is one, and the 1st priority is limit priority greater than 1 natural number, and it is preliminary parameter of flow control of each flow control submodule calculating according to following formula that flow rate generates submodule,
Figure FSB00001089097100041
In the following formula, i is the subscript of expression priority, Vi represents the preliminary parameter of flow control of the flow control submodule of i priority, Si represents the size of spatial cache in the state cache updating submodule of i priority, Ci represents the quantity of i priority online user in the present presence server, and min (Si, Ci) minimum value between Si and the Ci is asked in expression, Ti represents the maximum allowable delay that i priority users issue PUBLISH is handled
Flow rate generates submodule by inquiring user and business datum storage module, all users are added up, calculate the mean value of subscriber presentation state subscriber quantity, then the notice NOTIFY access speed that obtains in the step (31) divided by this mean value, be converted into issue PUBLISH access speed, represent with R
If If the preliminary parameter sum of the i.e. flow control of all priority is not more than issue PUBLISH access speed, then be the flow control submodule calculated flow rate control parameter of each priority according to following formula,
Figure FSB00001089097100043
Ui represents the flow control parameter of the flow control submodule of i priority in the following formula,
If
Figure FSB00001089097100044
If the preliminary parameter sum of the i.e. flow control of all priority is greater than issue PUBLISH access speed, then distribute issue PUBLISH access speed according to the principle that preferentially satisfies high-priority users, if the preliminary V parameter of the i.e. flow control of the 1st priority 1 is greater than R, then allow the flow control parameter U1=R of the 1st priority, namely issue PUBLISH access speed R is all distributed to the flow control submodule of the 1st priority; Otherwise, allow U1=V1, namely allow the value of flow control parameter of the 1st priority equal the value of the preliminary parameter of flow control of the 1st priority, at this moment the value of remaining issue PUBLISH access speed is that R deducts U1, according to mentioned above principle, remaining issue PUBLISH access speed is distributed successively according to priority again, up to all distributing
Method two: if user's priority is to determine that according to subscriber's quantity of subscriber presentation state then computational process is as follows by presence server:
If always have M priority level, M be one greater than 1 natural number, then flow rate generation submodule is the notice NOTIFY access speed mean allocation that obtains in the step (31) M part, every part value is represented with W, be the flow control submodule calculated flow rate control parameter of each priority then according to following formula
Figure FSB00001089097100051
In the following formula, i is the subscript of expression priority, and Ui represents the flow control parameter of the flow control submodule of i priority, and Qi represents the mean value of the subscriber's quantity that is present condition of i priority users,
(33) flow rate generates the flow control parameter that submodule calculates step (32) and sends to corresponding flow control submodule.
6. according to claim 3 a kind of to presenting the method that business network load is controlled, it is characterized in that: the load control module is specifically to comprise the steps: to the method that the issue PUBLISH of receiving carries out load control in the described step (5)
(51) the issue PUBLISH classification transmission submodule of load control module comes the priority of source user according to the issue PUBLISH, and this issue PUBLISH is forwarded to state renewal cache sub-module that should priority;
(52) state renewal cache sub-module is carried out buffer memory to the issue PUBLISH of receiving, if in the time that buffer memory is waited for, user's the present condition that is changes, and then replaces this user's old issue PUBLISH with the new issue PUBLISH that derives from this user; If spatial cache is full, and the issue PUBLISH of newly receiving do not have corresponding old issue PUBLISH in spatial cache, then abandons the issue PUBLISH that this is newly received; After the issue PUBLISH is sent by the flow control submodule, just from spatial cache, delete;
(53) the flow control submodule generates the flow control parameter that submodule distributes according to flow rate, generates token, and token is stored in the token bucket of a setting capacity; If token bucket is full, then newly-generated token is dropped; If there is token to use in the token bucket, then the flow control submodule upgrades from state and takes out an issue PUBLISH the cache sub-module, sends to the issue PUBLISH and compiles the transmission submodule, simultaneously token of deletion from token bucket;
(54) the issue PUBLISH compiles to send and sends to notice NOTIFY sending module after submodule compiles the issue PUBLISH of receiving.
CN2011101301981A 2011-05-19 2011-05-19 System and method for controlling network load of presence service Expired - Fee Related CN102195985B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2011101301981A CN102195985B (en) 2011-05-19 2011-05-19 System and method for controlling network load of presence service

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2011101301981A CN102195985B (en) 2011-05-19 2011-05-19 System and method for controlling network load of presence service

Publications (2)

Publication Number Publication Date
CN102195985A CN102195985A (en) 2011-09-21
CN102195985B true CN102195985B (en) 2013-08-21

Family

ID=44603372

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011101301981A Expired - Fee Related CN102195985B (en) 2011-05-19 2011-05-19 System and method for controlling network load of presence service

Country Status (1)

Country Link
CN (1) CN102195985B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107291370A (en) * 2016-03-30 2017-10-24 杭州海康威视数字技术股份有限公司 A kind of cloud storage system dispatching method and device

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102368738B (en) * 2011-11-30 2015-04-22 盛科网络(苏州)有限公司 Network rating traffic policing method and system thereof
CN103618800B (en) * 2013-12-05 2017-11-03 华为技术有限公司 The implementation method and device of subscribing notification
US9706414B2 (en) 2013-12-12 2017-07-11 Huawei Technologies Co., Ltd. Method and apparatus for determining data flow rate on service access port
CN103702360B (en) * 2013-12-12 2017-06-06 华为技术有限公司 A kind of method and device of the data rate for determining service access port
KR101856857B1 (en) * 2016-09-09 2018-05-11 현대오트론 주식회사 Apparatus and method for controlling message communication load
CN115640084A (en) * 2021-07-20 2023-01-24 中兴通讯股份有限公司 System message sending method and device for client

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101188575A (en) * 2007-12-04 2008-05-28 浙江大学 A traffic control and message buffering method oriented to distribution subscription system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101188575A (en) * 2007-12-04 2008-05-28 浙江大学 A traffic control and message buffering method oriented to distribution subscription system

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
C.Malamud.A No Soliciting Simple Mail Transfer Protocol (SMTP) Service Extension.《Request for Comments:3865》.2004,1-19. *
J.Rosenberg等.A Data Model for Presence.《Request for Comments:4479》.2006,1-34. *
王纯等.IMS中基于Presence的个人通信管理业务的设计和实现.《2008通信理论与技术新进展——第十三届全国青年通信学术会议论文集(上)》》.2008,413-418. *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107291370A (en) * 2016-03-30 2017-10-24 杭州海康威视数字技术股份有限公司 A kind of cloud storage system dispatching method and device
CN107291370B (en) * 2016-03-30 2021-06-04 杭州海康威视数字技术股份有限公司 Cloud storage system scheduling method and device

Also Published As

Publication number Publication date
CN102195985A (en) 2011-09-21

Similar Documents

Publication Publication Date Title
CN102195985B (en) System and method for controlling network load of presence service
CN106464680A (en) Bandwidth management in a content distribution network
CN108306971A (en) A kind of method and system of the acquisition request of transmission data resource
WO2006073804A3 (en) Data traffic load balancing based on application layer messages
CN108366020A (en) A kind of method and system of the acquisition request of transmission data resource
US7447155B2 (en) Guaranteed service in a data network
CN101707789B (en) Method and system for controlling flow
CN112887107B (en) Bandwidth allocation method and system and optical line terminal
Kaheel et al. A new analytical model for computing blocking probability in optical burst switching networks
CN113395671B (en) Message pushing rate adjusting method and device and server
CN100583817C (en) Method of safetguard digital household network QoS
CN104580495B (en) Network request treating method and apparatus
CN101129028B (en) Estimation of bandwidth requirements in a communications network with access controls
CN106407636A (en) Integration result statistics method and apparatus
CN105812278A (en) Service quality control method and device in software defined network
CN108768787B (en) Block link point excitation method and device
CN101695049A (en) Method and device for processing businesses in monitoring system
CN104320455B (en) A kind of data distributing method, server and system
CN100399770C (en) Sending controller channel stream limiting method
CN105099939A (en) Method and device for implementing flow control among different data centers
CN103731323A (en) Method and device for monitoring service traffic of mobile Internet
Seoane et al. Analysis and simulation of a delay-based service differentiation algorithm for IPACT-based PONs
US11201901B2 (en) Methods and systems for streaming media data over a content delivery network
US8996685B2 (en) Management of the distribution of contents
GB0522223D0 (en) Distribution of data in a network

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130821

Termination date: 20150519

EXPY Termination of patent right or utility model