Summary of the invention
The object of the present invention is to provide a kind of method for monitoring network service quality, make network service monitoring have adaptivity, satisfy the monitoring needs of different services, different user and different quality requirement.
Network service monitoring method based on service-level agreement.The present invention serves the monitoring system structure by a kind of service-level agreement describing method and network that embodies the network service quality observation process of design voluntarily, each function in the whole network service observation process is divided into various monitoring function services, simultaneously service-level agreement analysis is obtained the flow process of network service monitoring, and according to the flow process of analyzing gained various monitoring function service groups are lumped together, realize monitoring as required to the various network services quality.Characteristics of the present invention be the to improve service quality adaptivity and the flexibility of monitoring system, make the services quality monitoring system to carry out personalized monitoring, and need not develop the flow process of a cover monitoring system or stationary monitoring system again for the demand of new monitoring according to heterogeneous networks service, different customer requirements.When new monitoring requirements, monitoring method of the present invention only need be done little change just can adapt to new monitoring requirements.
The main process of services quality monitoring is to obtain certain user-dependent mass parameter from service monitoring agency, and the data of obtaining are calculated according to the statistical method of customer requirements, and the quality assurance of the result of calculation of gained and user's requirement compared, whether the evaluation services quality satisfies customer requirements, and carry out other according to actual conditions and handle, give and discount when for example when quality can not satisfy customer requirements, carrying out service quality adjustment or record violation or charging.Therefore in order to realize the automation of services quality monitoring flow process, solve service management agent in the services quality monitoring, data are obtained and process the uncertainty that exists in calculating, three parts of service quality assessment, the services quality monitoring process is divided according to this three part, with the various functions in the various piece as service, by the service combine engine, these service groups are lumped together, realize dynamic combined, self adaptation adjustment monitoring flow process.
In service was integrated, each functional module all was service, was undertaken integrated by unified interface description and call method.Therefore for the service management agent of various services, to adopt the WebServices technology to realize, the interface of service management agent adopts web services definition language (WebService Definition Language, WSDL) define, and (Simple Object Access Protocol SOAP) conducts interviews to the service management agent interface to adopt Simple Object Access Protocol.Also adopt Web Services technology to realize for the various functions that are used for calculating, the same WSDL that adopts describes interface, adopt SOAP to call, simple calculation services comprises addition subtraction multiplication and division computing service, binary arithmetic operation service, comparison operation service, series of operations service and some algorithm service or the like, by these calculation services being made up can operating various data.For the processing after the assessment, also will adopt Web Services technology to realize, various evaluation process then as service, in the time of needs, are called these services by soap protocol.Therefore related various network services administration agent, data computation function and processing capacity all is implemented as various services in the whole services quality monitoring process.On the basis that possesses these services, these services are realized monitoring to service quality according to certain logical combination together by the service integrating engine.
Service quality must be monitored according to user's demand, require the needed qualitative data of monitor user ' according to the user, requirement according to the user is calculated, and when not reaching the user and will go, quality carries out various forms of processing according to user's requirement, and service-level agreement provides the agreement that comprises user's request, various quality requirement and computational methods, various processing that the merchant consults to sign with the user, therefore the foundation of services quality monitoring be service-level agreement (Service LevelAgreement, SLA).So for the services quality monitoring system, the service monitoring logic of service integrating engine institute foundation must come from service-level agreement.
WSLA (Web Service Level Agreement) is the network classes of service protocol specification that is proposed by IBM Corporation, it has described the user to will the going of service quality, the computational process of quality of service data, the processing of service guarantees, it adopts the XML language to be described simultaneously, makes things convenient for analyzing and processing.
Therefore in the services quality monitoring system, adopt the description standard of WSLA as service-level agreement, the service integrating engine is called SLA and carries out engine, it is actually analyzing with the defined SLA of WSLA standard, therefrom obtain actuating logic, and call various services in the services quality monitoring system according to actuating logic.
It is as follows that SLA carries out the parser that comprises in the engine:
1, reads whole SLA, therefrom extract title, provider and the user of SLA;
2, a behavior of obtaining among the SLA guarantees (being defined as Action Guarantee in SLA), comprises that behavior guarantees the condition that corresponding grade of service target (being defined as Service LevelObject in SLA), processing behavior (being defined as Qualified Action in SLA) and processing behavior trigger;
3, the grade of service target of obtaining in the behavior assurance is analyzed, obtained pairing service operations of behavior grade target (in SLA, being defined as Operations) and QoS parameter;
4, analyze the computational process of this QoS parameter, computational process is described with data-structure tree, be called as the process tree, each node comprises title, computational methods and result, and wherein working as data is to define among the SLA, then directly as a result of, and there are not computational methods, if calculate by computational methods, then comprise computational methods, the result obtains in the process of implementation;
If 5 these QoS parameters are last QoS parameters in last this grade of service target, then carry out 6, otherwise return 4, analyze the related next QoS parameter in this grade of service target;
If 6 these grade of service targets are last grade of service targets in the current behavior assurance, then enter 7, otherwise return 3, the next grade of service target during current behavior is guaranteed is analyzed;
If 7 current behaviors guarantee it is that last behavior guarantees to enter 8 among the SLA, otherwise return 2, obtain next behavior and guarantee, analyze;
8, analytic process finishes.
SLA carry out engine to all QoS parameters according to the tree of being set up, execution from bottom to top, just calculate according to left and right sides data of tree and the computational methods in the intermediate node, result of calculation is upwards transmitted, and calculates once more as the operand of upper layer node.
For whole system, observation process is divided into multiple service, and therefore service register center of needs is come the various services in the Accreditation System, and the locating function of service is provided, when SLA carries out engine and do not know that the service that needs there, search by service register center.
The invention has the advantages that its architecture and, have very big flexibility, support the monitoring of the various ways of multiple service, adapt to user's different demands based on the monitoring of service-level agreement.Need monitoring as new service, only register the agency of this service, and in service-level agreement, specify this agency in service register center; If new computational process is arranged, also be to register this computational methods, and in service-level agreement, specify this method in service register center; If equally new evaluation process method is arranged, also only be that this processing method is distributed on service register center as service, and in service-level agreement, specify this processing method.The change of service monitoring requirements is smaller to monitoring system influence itself, and the overall structure loose couplings has very strong self-adaptation type.
A kind of method for monitoring network service quality, it is characterized in that, from service monitoring agency, obtain certain user-dependent mass parameter, and the data of obtaining are calculated according to the statistical method of customer requirements, and the quality assurance of the result of calculation of gained and user's requirement compared, whether the evaluation services quality satisfies customer requirements, and handles according to actual conditions.For example for video-on-demand service, customer requirements was gathered once every 5 seconds, calculated the once flow of average each second every 30 seconds, and require the per second flow greater than 1,000,000, when compensating by the reduction expense less than 1,000,000 the time, then serve monitoring system and need from the service broker, obtain the data of present speed every 5 seconds, and to preserve 6 be one group, calculate the mean value of 6 data then, the size that compares mean value and 1,000,000 then, when not satisfying customer requirements, call far management system and carry out the expense compensation.And different users is to the quality of service requirement difference, for example same video-on-demand service, different user requires need not, some user wishes to calculate average speed by calculating total flow and time, and requiring speed to be not less than 0.5 million, this just causes image data and data is calculated different with process meeting relatively.Therefore in order to realize the automation of services quality monitoring flow process, solve service management agent in the services quality monitoring, data are obtained and process the uncertainty that exists in calculating, three parts of service quality assessment, the services quality monitoring process is divided according to this three part, with the various functions in the various piece as service, by the service combine engine, these service groups are lumped together, realize dynamic combined, self adaptation adjustment monitoring flow process.For various services quality monitoring agencies, it is designed to the network service, use WSDL to describe interface, adopt the unified interface accessing form of SOAP, processing is calculated for data, the statistics and analysis comparative approach that promptly refers to the data that collect, generally comprise addition subtraction multiplication and division, array manipulation, series of operations or the like, with various function calculation method as various functional services, and the violation that adds customer requirements is handled also as various services, in fact be exactly that services quality monitoring is acted on behalf of then to the services quality monitoring process, obtain data, services, the data computation service and the service of handling are in violation of rules and regulations combined according to user's requirement, when customer requirements not simultaneously, the quality-monitoring agency who needs, the data computation service is with the processing service is different in violation of rules and regulations, but the different quality-monitoring processes that require of different user all are combined to form by these function services.
Described method for monitoring network service quality, mainly achieve the goal by network service quality monitoring system architecture, the method that we propose is based on service-level agreement, be applicable to the monitoring of various network services different quality requirement, can use the situation of service to monitor to the user that difference service, different quality require by this method, its concrete steps be as follows:
1) user uses service
2) obtain the service-level agreement that the user signs, service-level agreement is described with XML;
3) service-level agreement is analyzed, obtained the services quality monitoring logic;
4) according to the monitoring logic, seek various Monitoring Service and the network service agent that needs, and with these services together, realize monitoring service quality according to the monitoring logical combination from service register center;
5) user stops using this service;
6) stop monitoring to this QoS of customer.
Fig. 1 has provided concrete system diagram;
A kind of network service quality monitoring system comprises:
(1) service register center device is used to register various services and network service agent, and query function is provided;
(2) network service agent device is used for collection network service performance parameter;
(3) calculation services device is used for handling the service performance parameter, and these parameters are processed calculating, comprises the addition subtraction multiplication and division that needs in the computational process, series of operations, compare operation or the like;
(4) evaluation process device is used for carrying out the various processing operations after the assessment, refers to that when service is failed to reach expection and required the compensating operation that the service provider carries out comprises that expense is reduced or remitted, processing such as competitively priced;
(5) SLA carries out engine apparatus, is used for SLA is analyzed, and according to analyzing the monitoring logic that obtains, calls various network services agent apparatus, monitoring function device and evaluation process device according to logic, realizes the monitoring to service quality.
Described network service quality monitoring system, the service register center device is connected to network service agent device, calculation services device, evaluation process device, SLA and carries out engine apparatus, and SLA carries out engine apparatus and connects mutually with network service agent device, calculation services device, evaluation process device.
Fig. 2 has provided the flow process of concrete steps;
Described method for monitoring network service quality, wherein SLA combination execution engine need be analyzed as follows SLA:
1) reads whole SLA, therefrom extract title, provider and the user of SLA;
2) behavior of obtaining among the SLA guarantees (being defined as Action Guarantee in SLA), comprises that behavior guarantees the condition that corresponding grade of service target (being defined as Service LevelObject in SLA), processing behavior (being defined as Qualified Action in SLA) and processing behavior trigger;
3) grade of service target of obtaining in the behavior assurance is analyzed, obtained pairing service operations of behavior grade target (in SLA, being defined as Operations) and QoS parameter;
4) analyze the computational process of this QoS parameter, computational process is described with data-structure tree, be called as the process tree, each node comprises title, computational methods and result, and wherein working as data is to define among the SLA, then directly as a result of, and there are not computational methods, if calculate by computational methods, then comprise computational methods, the result obtains in the process of implementation;
5) if this QoS parameter is last QoS parameter in last this grade of service target, then carry out 6), otherwise return 4), analyze the related next QoS parameter in this grade of service target;
6) if this grade of service target is last grade of service target in the current behavior assurance, then enter 7), otherwise return 3), the next grade of service target in the current behavior assurance is analyzed;
7) if current behavior guarantees it is that last behavior guarantees to enter 8 among the SLA), otherwise return 2), obtain next behavior and guarantee, analyze;
8) analytic process finishes.
Fig. 3 has provided the idiographic flow of parser;
Described method for monitoring network service quality, it is characterized in that integrally-built loose coupling and flexibility, whole network service quality observation process is divided into service management agent, data are obtained and the course of processing, three parts of service quality assessment, and the various functions of these three parts are divided and realize various monitoring function services with Web Services technology, comprise that service management agent also adopts Web Services technology to realize, obtain data by soap protocol, by the monitoring logic various monitoring function service groups are lumped together, realize monitoring service quality;
Embodiment
Fig. 1 has mainly described the architecture based on the network service quality monitoring system of service-level agreement:
Obtain with the course of processing, three parts of service quality assessment according to the service management agent in the services quality monitoring, data the monitoring function service is divided into corresponding three parts.At first be the service management agent device, comprised the various administration agents of service that the service provider provides in this classification, and these administration agents adopt its interface of Web Services technical description.Be the calculation services device then, be used for that deal with data is obtained and the course of processing, data are obtained from service management agent by soap protocol; Data computing is processed with several different methods, different services or different users have nothing in common with each other to the data computation method for processing, therefore this with various data computational methods as the monitoring function service, for example the operation of the addition subtraction multiplication and division of data is as a kind of monitoring function service, the series of operations of one group of data is again as a kind of monitoring function service, the comparison of data, binary arithmetic operation or the like all can be used as a kind of monitoring function service, these function services all adopt Web Services technology to develop realization, each monitoring function service is exactly a Web Service, adopt WSDL to describe the operation that every kind of monitoring function service is provided, adopt SOAP to call these operations, when new data process operation method, this method of operation is developed as Web Service, and in fact this part has realized the collection of proxy data is calculated and assessment.Be to handle service unit at last, this part realizes the work of treatment to assessment result, i.e. compensating operation when service quality does not reach customer requirements and quality adjustment operation or other are various in advance and the operation that consults of provider, the various operations of this part are all as a kind of service, also adopt Web Services technology to realize, will adopt soap protocol calling also of these works of treatment.
Three devices except monitoring function have a service register center device in the system, be used for writing down that each serves residing position in the whole system, needed address when promptly calling, and the function introduction of each service.The function that the service register center device also provides service registry, searched, retrieves.
The purpose of whole services quality monitoring system is for the Monitoring Service quality, so SLA carries out engine apparatus three parts of monitoring function are combined as required, realizes the quality-monitoring to service.SLA carries out engine apparatus and is used for the Analysis Service level protocol, and the various monitoring function service groups of needs are lumped together according to the result who analyzes, quality-monitoring is carried out in service, from service management agent, obtain data, calculate in the calculation services device and whether the evaluation services quality meets the demands, in handling service unit according to the actual conditions of service quality and signed service-level agreement and handled.When service-level agreement changed, needed various services also can change, and the combinational logic of same various services can change.Therefore SLA carries out the function that engine apparatus has analysis SLA and combine engine.
Therefore whole services quality monitoring system is carried out engine apparatus, service management agent device, calculation services device, is handled service unit and the service register center device is formed by SLA.Various service registrys in service management agent device, calculation services device and the processing service unit are in the service register center device, and SLA execution engine apparatus is searched various services by service register center, and by the address information that finds the needs employing soap protocol of various services according to SLA is called.
Fig. 2 represents whole monitoring implementation:
1, the user uses service
2, obtain the service-level agreement that the user signs, service-level agreement is described with XML;
3, service-level agreement is analyzed, obtained the services quality monitoring logic;
4, according to the monitoring logic, seek various Monitoring Service and the network service agent that needs, and with these services together, realize monitoring service quality according to the monitoring logical combination from service register center;
5, the user stops using this service;
6, stop monitoring to this QoS of customer.
Fig. 3 is that SLA carries out in the engine apparatus parser process to SLA:
1, reads whole SLA, therefrom extract title, provider and the user of SLA;
2, a behavior of obtaining among the SLA guarantees (being defined as Action Guarantee in SLA), comprises that behavior guarantees the condition that corresponding grade of service target (being defined as Service LevelObject in SLA), processing behavior (being defined as Qualified Action in SLA) and processing behavior trigger;
3, the grade of service target of obtaining in the behavior assurance is analyzed, obtained pairing service operations of behavior grade target (in SLA, being defined as Operations) and QoS parameter;
4, analyze the computational process of this QoS parameter, computational process is described with data-structure tree, be called as the process tree, each node comprises title, computational methods and result, and wherein working as data is to define among the SLA, then directly as a result of, and there are not computational methods, if calculate by computational methods, then comprise computational methods, the result obtains in the process of implementation;
If 5 these QoS parameters are last QoS parameters in last this grade of service target, then carry out 6), otherwise return 4), analyze the related next QoS parameter in this grade of service target;
If 6 these grade of service targets are last grade of service targets in the current behavior assurance, then enter 7), otherwise return 3), the next grade of service target in the current behavior assurance is analyzed;
If 7 current behaviors guarantee it is that last behavior guarantees to enter 8 among the SLA), otherwise return 2), obtain next behavior and guarantee, analyze;
8, analytic process finishes.
Fig. 4 represents QoS parameter process tree constructed in the video request program example
For example: video request program (VOD) user " first " requires the each second flow greater than 1M, then " flow each second " is QoS parameter, " flow is greater than 1M in each second " guarantees for service quality, when each second, flow was less than 1M, service quality does not reach requirement, provider in violation of rules and regulations, therefore assess reprocessing and be record violation record, vod management the agency provide each user's present flow rate sum, is the computational process of QoS parameter every 30 seconds from the data on flows of administration agent collection user first and the process of subtracting each other divided by 30.
Example according to video request program, shown in the XML that defines its ServiceQualityDefinition was expressed as follows: Seconds30 had stipulated that the term of validity of data acquisition is that 8 of every mornings on December 20th, 18 days 1 December in 2004 are to point in afternoons six, frequency is 30 seconds, promptly gathers once every 30 seconds.Service operations is that Operation is " video on demand ", and this operation comprises a QoS parameter EverySTraffic, the flow of expression per second, and its directly corresponding Metric is EverySTrafficMetri.The computational process of EverySTrafficMetric is that the computational process of per second flow is made up of Every30STrafficMetric, Every30STrafficTS and Traffics.Traffics represents from the total flow data of network service management agency acquisition, the capacity that each user of this agency's record downloads the current time altogether; Every30STrafficTS represents that length is one group of sequence of 2, the data on flows that each element representation of sequence obtained from administration agent every 30 seconds, and when new data arrived, old data were capped; Every30STrafficMetric represents the absolute value of the difference of two elements in the Every30STrafficTS sequence, the promptly 30 seconds flows at interval; EverySTrafficMetric represents Every30STraffic divided by 30 value, i.e. the flow of per second in the acquisition interval.The network service management agency is deployed as Web Services, and comprises an interface " getTraffic " that customer flow is provided for VoDAgent, and unit is M/s.The value of Traffics can be passed through RequestURI, InterfaceName, RequestParameter is that (VoDAgent, getTraffic, " first ") carries out far call.This shows and in ServiceQualityDefinition, stipulated QoS parameter and corresponding mass parameter computational methods.
<serviceQualityDefinition name=" VoDService "><schedule name=" Scconds30 "><period><start>2004-12-1808:00:00-18:00:00</Start><end>2004-12-2008:00:00-18:00:00</End></Period><interval><seconds>30</Seconds></Interval></schedule><operation name=" Video on Demand "><sLAParamcter name=" EverySTraffic " type=" doublc " unit=" M/s "><metric>EverySTrafficMetric</Metric></SLAParameter><metric name==" EverySTrafficMetric "><source>ICT</Source><function FunClass=" Arithmatic " Method=" divide " type=" double " unit=" M/s "><operand><metric>Every30STrafficMetric</Metric></Operand><operand><longScalar>30</LongScalar></Operand></Function></Metric><metric name=" Every30STrafficMetric " type=" float " unit=" M/30s "><source>ICT</Source><function FunClass=" Arithmatic " Method=" Minus " resultType=" double "><operand><function FunClass=" getMetric " resultType=" double "><operand><metric>Every30STrafficTS</Metric></Operand></Function></Opcrand><operand><function FunClass=" getMetric " resultType=" double "><operand><metric>Every30STrafficTS</Metric></Operand></Function></Operand></Function></Metric><metric name=" Every30STrafficTS " type=" TS " unit="><source>ICT</Source><schedule name=" Seconds30 "><function FunClass=" SeriesOp " Method=" addMetric " resultType=" TS "><operand><metric>Traffics</Metric></Operand><operand><longScalar>2</LongScalar></Operand></Function></Mctric><metric name=" Traffics " type=" double " unit=" M "><source>ICT</Source><measurementDirective resultType=" double "><requestURI>Http: // 159.226.39.56:9009/axis/services/urn:VoDAgent? wsdl</RequestURI><interfaceNamc>GetTraffic</IntcrfaceNamc><requestParameters type=" String ">First</RequestParameters></MeasurcmentDirective></Metric></Operation><serviceQualityDefinition> |
Can be expressed as follows for grade of service target in the example of video request program: promptly the EverySTraffic parameter is greater than 1, and unit is M/s, just this mass parameter is assessed when having new EverySTraffic to calculate.
<ServiceLevelObjective?name=″TrafficsSLO″> <Obliged>ICT</Obliged> <Validity> <Start>2004-12-1808:00:00-18:00:00</Start> <End>2004-12-2008:00:00-18:00:00</End> </Validity> <Expression> <Predicate?name=″Greater″> <SLAParameter>EverySTraffic</SLAParameter> <Value>1</Value> </Predicate> </Expression> <EvaluationEvent>NewValue</EvaluationEvent> </ServiceLevelObjective> |
For the VoD order program service, its grade of service target is TrafficsSLO, require the per second flow greater than 1M, when grade of service target can not reach requirement, the service provider writes down a record in violation of rules and regulations, and shown in it was defined as follows: the processing behavior was to produce a record in violation of rules and regulations, and the address of its WSDL is specified by ActionInvokeURI, operation is CreateTT, and the parameter of input is to produce grade of service numbering SLAID in violation of rules and regulations and cause QoS parameter EverySTraffic in violation of rules and regulations.
Whole service-level agreement is described and is met the WSLA standard that IBM proposes.
<ActionGuarantee?name=″TrafficGuaratee″> <Obliged>ICT</Obliged> <Expression> <Predicate?name=″Voilation″> <ServiceLevelObjective>TrafficsSLO</ServiceLevelObjective> </Predicate> </Expression> <EvaluationEvent>NewValue</EvaluationEvent> <QualifiedAction> <Party>Support</Party> <ActionInvokeURI>http://159.226.39.52:8080/axis/services/Trouble:TroubleTicket?wsdl</ ActionInvokeURI> <ActionOperation>CreateTT</ActionOperation> <ActionInvokeParam>SLAID</ActionInvokeParam> <ActionInvokeParam>EverySTraffict</ActionInvokeParam> </QualifiedAction> <ExecutionModality>Always</ExecutionModality> </ActionGuarantee> |
According to it the service-level agreement analysis result as shown in Figure 4: at first obtain the flow information that needs from the VoDAgent Agency, frequency acquisition is defined by Second30, data are kept among the Traffics, right latter two Traffics is one group, form sequence Every30STrafficsTS, two numbers in the sequence are subtracted each other, adopt the minus method, and structure is kept among the Every30STraffics, this data representation is flow of 30 seconds at interval, again with these data divided by 30, adopt the divide method, structure is kept among the EverySTraffics, these data are the QoS parameter result, then QoS parameter are assessed, and 1 make comparisons, if less than 1, call the CreateTT operation of TroubleTicket.