NEGOTIATION FOR TELECOMMUNICATION RESOURCES

Abstract: A telecommunication system and method provides for negotiation between participants in a desired communication to establish the communication. The desired communication is defined by a set of parameters arranged in a hierarchy of stages and values for the parameters of each higher stage are negotiated before negotiation of those in the next lower stage. When values for all parameters in all stages have been agreed, the communication is established. If one or more parameter values cannot be agreed at a stage, forensic information is provided to the participants who can retry or abandon the negotiations. In one embodiment, a failed negotiation is restarted by a participant modifying a value for a parameter in a previously agreed stage and restarting the negotiation at that stage with the new value. Various negotiating disciplines can be employed to negotiate the stages, including a Round Robin negotiating discipline. Further, two or more participants can compete within a stage and the participant with the most favorable terms is selected for inclusion in subsequent stages while the others are removed from the negotiation.

Description: Negotiation For Telecommunication Resources The present invention relates generally to telecommunications, and more specifically, to a method and system of negotiating resources and services for a desired connection over telecommunication networks offeπng a vaπety of services and/or levels of service Background of the Invention Conventionally, telecommunication networks were operated by a service provider who made a single service available to users However, telecommunication networks have evolved greatly over the last two decades, and continue to evolve, so that there are currently multiple service providers offeπng multiple services to users For example, the data transmission methods and protocols now employed on telecommunication networks include Internet Protocol (IP), asynchronous transfer mode (ATM) and frame relay Similarly, the services offered include internet access, audio and video on demand, digital telephony, etc In the long distance voice telephone market there is a large number of service providers who use vaπous transmission means over wired, wireless, fiber optic and satellite transmission facilities The networks of these service providers are typically interconnected with those of other service providers to form larger, heterogeneous networks Determining an efficient means of communicating between two users over such telecommunication networks is a complex task, requiπng consideration of the pπce, quality and availability of services, in view of the requirements of the communication desired and the generally conflicting interests (cost vs pπce, network capacity vs service levels, etc )of the parties involved While attempts have been made to provide systems to manage these complexities, the proposed solutions are inefficient and have shortcomings that limit their effectiveness In general, existing telecommunications networks offer a small number of non-negotiable services, though they may allow users to select which of these finite services they desire The public switched telephone network (PSTN), for example, offers a finite set of services which are typically controlled using a limited set of SS7 messages Customers can subscπbe to services over a predetermined time period, or request special services either through interaction with a telephone operator or mechanically by use of Interactive Voice Response (INR) systems Either way, the number of options available to the customer is very limited Further, a customer generally can only select services directly from the service provider of the first network link that they connect with, services on subsequent, downstream, links provided by other service providers are negotiated by the service provider of the first link Similarly, while the heterogeneous Internet can provide an efficient network for transporting data packets, it is not designed to provide end to end services with guaranteed performance levels. Typically, there is a static selection of services available to users, under predetermined terms and conditions. The performance level that a user may require from the internet is only offered on a "best effort" basis and is generally not guaranteed. As well, users communicating over the Internet must use protocols that are understood and supported by all the participants in the communication. Voice and computer data were once carried on separate networks, although both are now commonly transmitted digitally over the same networks. Because the requirements for voice and data transmission differ, it is difficult to optimize the provision of both on a common network. Voice communication, for example, produces a steady stream of data at a fairly low and/or predictable rate, and rapid delivery is important as the human ear is very sensitive to latency. In contrast, data applications such as Web browsing generally produce unpredictable bursts of data that need to be delivered accurately, but for which a delay of some seconds may be considered acceptable. Other services may have different requirements for accuracy, delay and data rate, which characterize the Quality of Service (QoS) in a communication session. Ideally, a telecommunication service provider should provide a service which optimizes communication for a user's particular application and simultaneously optimizes the provision of that service over his own network along with services he is providing to other users. Using traditional techniques, this would require the service provider to proactively offer a different QoS for each new voice or data application that is developed and to manage his network to provide such varied QoS services. As service providers typically have limited knowledge of what applications their users may be implementing, it is difficult for them to offer products which are tailored to those applications. It is also difficult for service providers to anticipate the requirements of applications that have yet to be developed. Similarly, service providers are not generally aware of the computing power that a given user has, in terms of processing speed, memory capacity, software and operator expertise. Therefore, service providers generally provide products that serve a lowest common denominator, and possibly one or two major niche markets. Currently, users must search for the service provider that offers products best suited to their needs, if one does exist. Users that have multiple needs may have to enlist the services of a number of service providers to meet their varied needs. A conventional telephony network provides a fixed quality of voice service, typically referred to as toll quality, at a pre-arranged price. Long-distance re-sellers may use digital voice compression to offer lower-cost long distance service at a reduced pπce, but again, this service offers a fixed quality at a pre-aπanged pπce. Because competitors offer different voice quality, pπcmg and probability of call success, users can choose a service provider with a good reputation for providing service, even when such a provider may charge a greater pπce than others, or users can choose a lower pπced service provider, knowing that service levels may be less than optimal. This method becomes cumbersome when new services appear and the user must select a service provider for each of his applications and track their performance or check their reputations by word of mouth. An example of an application with non-conventional service requirements is Internet gammg, in which a number of players exchange small packets of information to update each other on their moves. Given how such games are typically implemented, this application calls for low latencies, but data rate requirements are light. Also, depending upon the implementation, a fairly high rate of packet loss can sometimes be tolerated if the game has been designed to tolerate packet losses. These requirements are much different, and place much different loads on a network, than voice communications or transfers of large data files. Hence, a demand exists for systems and methodologies which allow users to specify communication parameters to accommodate their needs. While attempts have been made to provide such systems, the present inventors are unaware of any that have been effective. A number of existing systems are surveyed m the article, "Connection Establishment in High-Speed Networks", by Scott Jordan and Hong Jiang, IEEE Journal on Selected Areas in Communications, vol 13, no 7, September 1995 and the contents of this article are incorporated herein by reference. The models discussed in the article descπbe a large number of parameters that must be resolved between the participants, including: cell loss probability, delay jitter, end-to-end delay, average throughput, peak bandwidth, pπcing, network congestion and degradation, and incentives to ease load management on the network. However, the processes discussed by Jordan et al. require all parties to agree on values for all parameters of the communication in a single stage. The present inventors have determined that, as the number of participants and complexity of their requirements grow, the likelihood of complete agreement diminishes, and no mechanism to resolve disagreement is presented by Jordan et al. Further, with the Jordan et al. techniques if the parties fail to come to terms, it is very difficult to determine why an agreement could not be reached. Jordan et al. does mention several "two stage" methodologies which include: a first stage m which "the user agent characteπzes the information streams that will be transmitted"; followed by a second stage in which the network offers a rate schedule from which the calling party selects their preference While Jordan terms these "two stage", they are best descπbed as offer-acceptance models. The user remains at the mercy of the service provider who may continue to offer only services that optimize his own resources, as telecommunication providers have done in the past Further, these systems have no incentive for the service provider to offer the differentiation of services that today's applications require. As well, the first stage descπbed by Jordan et al. is in essence an initialization stage and the offer and acceptance takes place in the next stage, so all of their methods are essentially single stage agreements. On page 1155 of the Jordan et al. article, a reference is made to a "distπbuted iterative negotiation process" descπbed in , "A New Approach To Service Provisioning In ATM Networks", by S. H. Low and P. P Naraiya, IEEE Transactions on Networking, Vol. 1, p.p. 547-553, 1993 and the contents of this article are incorporated herein by reference. However, Low et al simply descπbes an offer - acceptance model. Further, by "iterative", Low simply means that the network updates its rates peπodically, and re-negotiates with the users while their communications are active. The article, "Connection Establishment Protocol Based on Mutual Selection by Users and Network Providers", Nagao Ogino, ACM, 1998, and the contents of this article are incorporated herein by reference, presents a similar methodology m which a number of service providers bid on the provision of communication services defined by the user. This methodology requires that all parameters be specified and addressed in a single stage and is merely a bid-award system No instruction is provided in Jordan et al. or Ogino as to how these methods may be applied to a general case. For example, how are the logistical difficulties of establishing a video conference between six parties to be addressed 7 This would require at least six simultaneous and interactive negotiations between the respective parties and their service providers, as well as interconnections between these service providers. Each of these negotiations would have to resolve a large number of parameters, possibly including: latency; average bandwidth; peak bandwidth; pπcing; cost shaπng requirements; encryption and video compression format With so many parameters (e.g. degrees of freedom), it would be very difficult to find terms that all parties would agree to, and such conditions may not exist at all. Therefore, m order to be effective, some means of assuπng convergence and to address disagreements is required. There is therefore a need for a method and system of negotiating resources over telecommunication networks offeπng a vaπety of services. This method and system must be provided with consideration for the problems outlined above. Summary of the Invention It is therefore an object of the invention to provide a novel method and system of negotiating resources and services for a desired connection over telecommunication networks offeπng a vaπety of services which obviates or mitigates at least one of the disadvantages of the pπor art. According to one aspect of the present invention, there is provided a method of establishing communication between at least two entities, where the characteπstics of said communication are defined by a set of parameters, said method compπsmg the steps of: (l) arranging said set of parameters into a hierarchy of at least two stages, each stage including at least a different one parameter of said set of parameters; (n) negotiating, for each stage m turn, values for said parameters in said stage with each of said at least two entities to produce a set of agreed parameter values for each said stage; and (in) responding to agreement of parameter values at all stages by establishing said communication between said at least two entities according to said agreed values for said parameters. According to another aspect of the present invention, there is provided a telecommunications system compπsing: a first user terminal device; a second user terminal device; a telecommunications network operable to interconnect said first user terminal device with said second user terminal device; each of said first user terminal device, second user terminal device and said telecommunications network having an agent to represent its respective interests in negotiating a communication between said first user terminal device and said second user terminal device and each said Agent being operable to agree on values with each other agent for a set of parameters arranged in a hierarchy of stages to define a desired communication between said first user terminal device and said second user terminal device. According to yet another aspect of the present invention, there is provided a telecommunication method for negotiation between participants to establish a desired communication through a telecommunication network, the communication defined by a set of parameters arranged in a hierarchy of stages, the method compπsmg the steps of, from the highest stage to the lowest stage in tum: (i) negotiating and agreeing values with said participants for the parameters of a stage under consideration; (ii) if values for one or more parameters in said stage under consideration cannot be agreed, terminating said negotiation and notifying said participants accordingly; (iii) if values for parameters in the stage of step (i) are agreed, performing steps (i), (ii) and (iii) for each succeeding stage in said hierarchy; (iv) when values for all parameters in all stages have been agreed, said participants establishing said desired communication. In the event that negotiations fail at a stage, a participant can change the value of a parameter in a previously agreed stage and can restart the negotiation at that stage in an attempt to resolve the failure. Further, participants can compete to establish the desired communication and this competition can occur at each stage. Participants who fail in the negotiations at a stage are removed from subsequent negotiations at subsequent stages. Various negotiating disciplines can be employed to negotiate the stages, including a round robin negotiating discipline or others as will occur to those of skill in the art. Brief Description of the Drawings Embodiments of the present invention will now be described, by way of example only, with reference to the attached Figures, wherein: Figure 1 shows a general flow chart of a method in accordance with an embodiment of the invention; Figure 2 shows a block diagram of a telecommunications system in accordance with an embodiment of the invention; Figure 3 shows a schematic diagram of the interactions of the entities involved in the telecommunications system of Figure 2 ; Figure 4 shows a flow chart of the generic method used by the negotiation manager shown in Figure 3; Figure 5 shows a flow chart of a method used by the telecommunication network's agent shown in Figure 2; Figure 6 shows a flow chart of a method used by the first user's agent shown in Figure 2; Figure 7 shows a flow chart of the staged negotiation method in accordance with an embodiment of the present invention; Figure 8 shows a flowchart of the restarting of a negotiation after the unsuccessful termination of a previous negotiation, and Figure 9 shows an example of a hierarchy of parameters Description of the Invention A simplified view of a methodology in accordance with an aspect of the present invention is shown in Figure 1 This Figure presents a method of establishing communication between at least a first entity and a second entity, where the communication is defined by a set of parameters As will be discussed in more detail below, negotiation between entities occurs in stages, each stage having a subset of the set of parameters to be negotiated The process commences with the first stage wherein values for one or more parameters are negotiated between the entities at step 2 A determination is made at step 4 as to whether values for all parameters being negotiated in that stage have been agreed to by the entities If the values have not been agreed, the negotiation step 2 repeats If values have been agreed for all parameters of a stage, a determination is made at step 6 as to whether any more stages exist to be negotiated If one or more stages do exist to still be negotiated, at step 8 the next stage is selected and the negotiation of step 2 is performed for the parameters of that stage If at step 6 it is determined that no more stages exist to be negotiated, the process proceeds to step 9 where the desired communication is established and the process completes As descπbed in more detail below, vaπous mechanisms can be employed if the negotiation process of step 2 does not result in a convergence between the entities of the values for the parameters of a stage, l e - if the negotiation fails The phrase "participant" is used herein to descπbe hardware or software that represents any party having an interest in the parameters for the communication, or such a party them self Such parties can include users, their service provider or providers, and interconnecting communication providers Users will have terminal devices which allow the user to send and receive audio, video, data or other similar information, and such terminal devices can be a telecommunication interface such as a telephone, personal computer, personal digital assistant, cellular telephone, pager, fax machine or other devices as will occur to those of skill in the art Service providers can communicate with the end users via dial-up, cable or wireless modems, optical cables or using technologies such as ISDN (integrated services digital network), ADSL (asynchronous digital subscπber line), ATM or frame relay, for example The present invention is not limited to use with such devices and systems and other suitable means for service providers to provide communications between users within the scope of the present invention will occur to those of skill m the art The parameters that define the communication will depend on the nature of the communication that is desired. In the simple case of a voice call, the parameters can include: the pπce of the call, who pays for the call, and the QoS for the call including desired voice coders and maximum latency rates. More complex communications will include additional or other parameters, as will be apparent to those of skill in the art, some examples of which are identified hereinafter. Even in a simple case, the present inventors believe that it is easier and more advantageous to negotiate values for the set of parameters m multiple and successive stages. In more complex cases, there may be many stages. The number of stages and which parameters are negotiated duπng which stage, will depend on the pπoπties and goals of the participants. Once the values for the parameters have been agreed to, the connection can be executed according to those parameter values. As explained above, there is a growing demand for diverse services, which require telecommunication service providers to allow service parameters to be tailored to the specific requirements of the users. Even simple applications can result in very complex negotiations, which cannot be handled effectively by the existing methods. For example with existing methods, when a very large number of parameters need to be considered, it can require too long to perform the negotiation, relative to the expected communication set up time, participants may not be pleased with the outcome, and there is no guarantee that an agreement will ever be reached. Hence, the present invention separates negotiation of a communication into stages, where values for smaller sets of parameters are negotiated at the different, successive stages so that progress towards agreement is logical and steady. This reduces the level of complexity at each stage, so that there are fewer tradeoffs and alternatives to be considered duπng negotiation, and analysis of negotiations which failed or which produced undesirable results, are easier to perform The use of multiple stages allows communications to be managed, organized to be efficient and to terminate negotiations with a successful result. The logical division of the parameters to be negotiated in a stage makes the resolution of the communication much more straightforward and increase the likelihood of success. Further, it will take less time to find the values for the parameters that all participants will agree to, without wasting time at a lower (more specific parameters) level if agreement is not going to be reached at a higher (general, or non-negotiable, parameters) level. The invention provides for the "categoπzation of concerns", in that some terms can be more important to overall success ("deal breakers") than others and/or some terms are dependent upon others It does not make sense to negotiate less important terms if one or more deal breaker terms cannot be agreed For example, an application may require a guaranteed minimum data rate and, if such a rate cannot be agreed, then there is no sense in attempting to negotiating cost. Similarly, it does not make sense to negotiate a term whose relevance or meaning depends from another term before that other term has been agreed. For example, the cost that a calling party is willing to accept will depend upon the type of call to be established, i.e. a participant to a video conference call may be willing to pay up to three dollars a minute for such a connection, but only be willing to pay twenty-five cents a minute for a voice-only call. So, the parameters whose values are to be negotiated are arranged in a multilevel hierarchy, each level being negotiated as a stage. The invention also provides another feature that internet service providers (ISPs) can use to sell their services. Users who are accustomed to the high reliability of existing PSTNs could be hesitant to use the Internet for all of their communications unless there is a way of offeπng similar convenience and reliability. The invention enables such an application. If an automated agent represents the entities in the negotiation, as is presently preferred, the configuration of such a agent to mimic a traditional PSTN telephone can be accomplished easily. Finally, preferably, the present invention is implemented as an open system, where third parties are able to contπbute to the body of related software. In such a system, the use of the multiple stages makes it easier to wπte new negotiation strategies and other software utilities The present invention can include additional features which offer even greater improvements in effectiveness over previous methods. As noted above, negotiations may πse in complexity exponentially with the numbers of parameters and participants. The invention manages this complexity by breaking the negotiation down into smaller stages which can be easily monitored. The method of the invention can assist in obtaining convergence because the negotiation can now be descπbed in manageable terms and status information fed back to the participants. In the simple case, the invention can advise all participants of (l) which parameters are to be negotiated in which stage; (n) which values have been agreed to; and (in) the status of the present stage of negotiation. In a present embodiment, the communication proposals pass through the trusted domain of a negotiation manager, descπbed below, so that the progress of the negotiation can be monitored with confidence, and convergence to a negotiated agreement is encouraged. A proposal compπses a set of values for the set of parameters m a stage, the set of values being those that a participant can, or is willing to, accept. The invention allows participants to know what parameters have been resolved so far so that the participants can decide how to proceed As an example, a participant may repeatedly reject a communication, which is being negotiated, because the proposal includes a certain compression algoπthm for which the participant does not have the necessary software This allows another participant who receives the feedback information identifying why the negotiation failed, to propose a different compression algoπthm software and/or allows the first participant to attempt to obtain a copy of th erequired compression algoπthm to allow future communications requiπng the compression algorithm to proceed Without the feedback provided by the invention, the participants often would never have known why the communication was not established As well, participants can be advised as to what the contentious parameters/issues are on a per stage basis For example, rather than report that ten parameters are unresolved, the present invention can report that the parameters of stages 1 and 2 have been resolved, while one parameter (e.g. total permitted end to end latency) has not been resolved in stage 3 and that, because of this, the remaining parameters defined in stages 4 and 5 have not yet been considered. Having participants better informed can expedite agreement and user satisfaction A user may wish to focus on particular parameters and does not want superfluous disagreements to cause repeated failures The present invention allows the user to identify certain parameters as cπtical (e g. deal breakers) and others as merely desired, or "don't care", and the feedback that the present invention provides makes it easier for participants to identify why a certain communication cannot be resolved and to attempt to coπect the problem One simple way afforded by the present invention to rank the importance of parameters is to place important parameters in higher stages of the proposal hierarchy This allows these parameters to be considered by all participants at an early stage of the negotiation before other, less important parameter values are agreed and/or before negotiation time is wasted on less cπtical parameters when a deal breaker parameter cannot be resolved If the participants a negotiation fail to reach an agreement, they generally wish to determine why, so that attempts to overcome the problem for the present situation can be made and, hopefully, avoided m the future. Such 'forensic analysis' is also simplified by breaking the negotiation down into stages. Specifically, the negotiation manager can return audits to the participants identifying the parameter values that were modified, and by whom, in each stage In an ideal case, a failure to reach an agreement in one stage can be examined to determine the cause of failure so that remedial action can be taken to permit the communication to be successfully completed This remedial action can consist of reinitiating a preceding stage of the negotiation with an adjusted set of parameter values, selected in view of the determined cause, and which can allow convergence to occur at a subsequent stage. As an example, a communication may be proposed as a video call, for which a 'type of connection' parameter value is set in stage 1, and for which stage 2 has a dependent 'deal breaker' parameter which is a minimum data rate of 4Mbιts per second. In such a case, stage 1 may be successfully negotiated with the parties agreeing to the video call, but in stage 2 agreement cannot be reached if such a data rate cannot be provided by a participant. With forensic knowledge of the failure at stage 2, stage 1 can be reinitiated with the value for the type of connection parameter downgraded to a degraded type of video call (slow scan video for example, or one employing a high ratio data compression system), allowing a data rate of less than 4Mbιts per second to be accepted stage 2. For such forensic analysis, while there will be many situations of interest to some participants in some circumstances, there are three situations that will often be of interest: (I) where the discrepancies between parameter values in proposals by participants at a stage are very large, it is easy to identify why the negotiation failed. The negotiation manager can simply compare consecutive versions of the proposals in a stage and advise which parameter values were changed and by whom; (n) smaller conflicts between the proposals of participants are harder to detect. In an embodiment of the invention, the negotiation manager can monitor the versions of the proposals, stoπng the last n set of proposed parameter values from each participant and advising the participants if repetition occurs If the proposal has the same state (set of parameter values) at a given point m its circulation through the participants that it had for a previous negotiation round, some action must be taken to address the problem, or the negotiation will not converge; and (in) it is also difficult to detect the situation wherein sets of parameter values from participants are very close and yet the proposals do not converge, but follow a cyclic pattern that only returns to the same state after a large number of iterations (i.e - proposals follow a pattern of states such as A-B-C-D-E-A-B-C-D-E, etc.). In such a case, the negotiation manager can simply end the negotiation after a finite number of iterations, and report to the participants on the states of past proposals. Alternatively, the negotiation manager can identify the parameters that were being disputed or manipulated from stage to stage. Techniques for identifying patterns, loops and other anomalies in the proposal history produced by the negotiation manager are known m the art and will not be further discussed herein. Even a relatively simple approach can be adopted with the present invention, if necessary or desired. For example, the negotiations in a stage can be capped at a pre-selected number of permitted iterations between participants (e.g. each participant can make three sets of proposals) and if an agreement is not reached after this number, the stage is deemed to have failed In such a case, a complete log of all proposals by each participant in this stage and, if desired, each preceding stage, can be provided to some or each of the participants for forensic purposes. The preferred negotiation system of the invention is presented as a block diagram m Figure 2. In this example, telecommunication system 10 consists of a first user terminal device 12 and a second user terminal device 14, interconnected by a telecommunications network 16. In this example, telecommunication network 16 is the service provider for both the user of terminal device 12 and the user of terminal device 14. It is also contemplated that each of terminal devices 12 and 14 can be connected to different service providers/networks, provided that these networks are interconnected at some point to permit mter-communications between the networks The first user terminal device 12 and second user terminal device 14 can be, for example, telephones, cellular telephones, personal digital assistants, personal computers or servers which produce and/or consume data The telecommunications network 16 has at least one transmission means and at least one protocol, which will be descπbed in more detail below. First user terminal device 12 will have a first user agent 18 to represent the interests of the first user terminal device 12 negotiating a desired communication between itself and the second user terminal device 14 Similarly, second user terminal device 14 has a second user agent 19, which represents the interests of the second user in negotiating the communication and the telecommunications network 16 has a telecommunications network agent 20 which represents the interests of the owner of telecommunications network 16 in negotiating the communication. Each of agents 18, 19 and 20 can be intelligent applications acting on behalf of their user's/owner's interests, or an application cooperating with their user/owner to represent the user's interests and the agents can be implemented m hardware or software. If telecommunication devices 12 or 14 are simple devices or otherwise unable to execute their respective agents 18 and 19, these agents can be executed in any device which is trusted by the user and which is connected to network 16. For example, if the first user is using a conventional telephone as terminal device 12, agent 18 can be executed on a personal computer of the first user which is also connected to network 16. In other circumstances, the user agents 18 and/or 19 can be executed on a trusted device provided by telecommunication network 16 or by a third party. The negotiation of the terms of a desired communication is administered by a negotiation manager 22. Negotiation manager 22 can reside anywhere in the system 10, though in a simple implementation, it will reside somewhere in the telecommunications network 16. Preferably, negotiation manager 22 is operable to: 1. identify participating agents a negotiation, including the users' agents and the telecommunication networks' agents; 2. implement a negotiation discipline which allows each participating agent to make proposals of parameter values and to receive and consider the proposals of other participants and either accept the proposal or amend the values of one or more parameters of the proposal, and do so in a trusted environment; 3. respond to the negotiation being successful in a stage by proceeding to a next stage or by executing the proposal to provide the communication if all stages have been successfully negotiated; 4. identify loops, cycles and other circumstances of non-convergence or anomalies in the proposal history to determine if the negotiation will not converge, 5. return audits to the participants identifying the values of parameters that were modified, and by whom, from stage to stage; 6. detect whether a participant has violated the rules of the negotiation; 7. ensure termination within a limited number of rounds if convergence has not yet occuπed, and 8. provide forensic information to participants if the negotiation terminates without convergence. Broadly speaking, system 10 provides a flexible telecommunications system for resolving contention, utilization and pπcmg for network resources. System 10 is flexible in that new services and features developed by outside parties can be served by the network by negotiating the service levels and parameters to be provided by the network. In current telecommunication systems, all services are provided and controlled by the telecommunication system providers, which limits the services available and impedes the provision of new services In system 10, a user, negotiation manager or other participant with an interest in the negotiation, can obtain new negotiating disciplines or agents developed by themselves or outside parties and employ them in the negotiation. Further, a user of a service provider can define a set of parameters for a new service, feature or application in a timely and efficient manner. Details of such options will be descπbed in greater detail below. System 10 of the invention permits multiple participants to negotiate the terms of a given desired communication. The requirement for this functionality is clear, as a communication may have to pass through two, three or more telecommunication providers in traversing a broad geographical area. It is in the best interest of all the providers involved in the communication to be participants in the negotiation. This generalization also allows communications which have multiple users, such as conference calls, to be negotiated with all of the users and their associated service providers participating. System 10 of the invention encourages service providers to offer a greater variety and flexibility in their services, by improving the efficiency of their networks accordingly. In turn, this increased variety and flexibility allows the user to negotiate the services that he wants, rather than being forced to choose between limited services from the service provider to which he subscribes, or having to seek out a new service provider that offers the services he requires. System 10 resolves contention between users by making a variety of data, voice and other telecommunication services available that are suited to varying applications. System 10 can also provide incentives, such as reduced prices and improved overall network capacity utilization, encouraging use of available resources rather than insisting on the highest quality. By making the provision of those services open to negotiation, the participants are able to reach a mutually agreeable result which might have been impossible to otherwise achieve. As described above, the invention allows these improvements by providing a system wherein each participant can have one or more agents which negotiate on its behalf. As a minor issue, this requires that a convention for negotiation be established that all the agents can understand, though the particular nature and parameters of such a convention does not limit the invention. In the event that a terminal device is not sophisticated enough or otherwise able to directly support an agent, an agent can be created for that terminal device, as needed, at another location in system 10. For example, if in Figure 2 second user terminal device 14 is a conventional telephone, second user agent 19 can be implemented by network 16 or within negotiation manager 22 and can utilize a set of requirements and capacities which have been predefined for conventional telephones by the user, the user's service provider, etc. Figure 3 shows the interactions between the participants and a negotiation manager in an embodiment of the present invention. In the Figure, each interested party in the negotiation is shown as a participant 24. In a simple implementation as described with respect to Figure 2 above, participants 24 will include the first user's agent 18, second user's agent 19 and the telecommunication network's agent 20. While second user's agent 19 is not required for conventional models of a voice telecommunication where the originating caller assumes the cost of the service, second user's agent 19 will allow the second user to assume all or part of the cost of the telecommunication in other cases More importantly, second user's agent 19 will allow the communication to be negotiated with consideration for the interests of the second user terminal device 14 For example, if second user terminal device 14 does not have the modem speed of the first user terminal device 12, there is not any benefit to negotiating a high-speed connection between first user terminal device 12 and telecommunication network 16 Similarly, if telecommunication network 16 consists of a number of ATM, long distance or frame relay providers, it may be advantageous to include a agent for each respective telecommunication provider in the negotiation as well Therefore, any entity in the telecommunication system 10 which has an interest in the outcome of the negotiation, can be a participant 24 in the negotiation Participants 24 communicate with negotiation manager 22 by passing a proposal 26 back and forth using agreed default communications protocols At a minimum, a proposal 26 includes a definition of the desired communication with a set of parameters for defining the communication, the parameters aπanged in hierarchical stages, as discussed below While in the present invention it is contemplated that values will only be changed for parameters in a single stage at any one time, it is also contemplated that proposal 26 circulated between participants can, in some circumstances, include all stages of the proposal and in others, only include the stage presently being negotiated In the former case, a participant may be able to negotiate a stage more intelligently knowing all of parameters m all of the stages of the proposal, and in the latter case the size of the proposal transmitted between the participants can be reduced It is further contemplated that, provided negotiation manger 22 is trusted by all participants, which is the presently preferred implementation of the present invention, negotiation manager 22 will typically know all stages of the proposal at the commencement of the negotiations, even though it may only provide the parameters in a single stage to the participants at any one time In general, a negotiation will consist of a single proposal 26 that each participant 24 is free to inspect and modify Use of a single proposal 26 which is moved between participants avoids problems that could be expeπenced with multiple proposals which require additional overheads of coordination and time stamping As well, because proposal 26 can be a relatively small data packet, little time or network capacity is lost in transferπng it from one participant 24 to another A user may also have some control over the size of proposal 26 by his choice of negotiating strategy and parameters The contents of a proposal 26 will be discussed below Negotiation manager 22 will employ a set of rules, or a negotiation discipline, 28 The present invention is descπbed below with respect to a specific example of a negotiation discipline 28, but the invention is independent of the specific negotiation discipline 28 employed and it is contemplated that a wide range of disciplines can be employed as will be apparent to those of skill As noted above, the invention is not limited by the physical location of the negotiation manager 22. In general, it is desirable that the negotiation manager 22 be trusted by all participants, and/or reside in a secure location, but even this is not necessary if participants 24 secure themselves within their negotiating preferences. For example, a participant 24 could restrain his set of values in proposal 26 to be revocable, allowing itself a last-look pπor to commencing execution of a negotiated proposal 26 Other methods of secuπng, for example, by use of cryptographic signatures or an authentication list, are known in the art and can be employed. Because the location of negotiation manager 22 is not restπcted, it can be provided by a network service provider, a user, or a third party. This flexibility is one of the benefits of the invention, that it makes this an open system. A third party can create a negotiation manager 22 or a negotiation discipline 28 and make it available to all interested users and network entities on the telecommunication system 10. It is contemplated that this openness will allow system 10 of the invention to mature very quickly by the addition of new negotiation managers 22 and negotiating disciplines 28 with new features. A simple flow chart of the operation of a negotiation manager 22 is presented in Figure 4 Negotiation manager 22 identifies all of the participants 24 in the negotiation at step 32, implements a negotiation discipline 28 and organizes a proposal 26 at step 34, determines if the negotiation has been successful at step 35 and, if the negotiation is successful, executes the contract that results from the negotiated values for the set of parameters at step 36. If at step 35 negotiation manager 22 determines that the negotiation has been unsuccessful, forensic information is returned to the participants at step 37 to enable them to re-initiate the negotiations, if desired, with a revised set of parameter values in an attempt to converge the negotiation. The identification of the participants 24 at step 32 can be performed in a number of manners. In a simple implementation with three participants 24, namely the first user's agent 18, second user's agent 19 and the telecommunication network's agent 20, the participants 24 will be identified in the initial proposal 26 created by the first user's agent 18 when it initiates its request for communication with the second user terminal device 14. In such a case, the initial proposal 26 will identify the first user terminal device 12 as the source of proposal 26 and the calling party, the second user terminal device 14 as the called party, and the telecommunication network 16 as the service provider In the more general case, the initial proposal 26 will still identify the first user terminal device 12 as the source of the proposal 26 and the calling party, and the second user terminal device 14 as the called party, but the identification of participants 24 at the telecommunication network 16 level may be left to the negotiation manager 22 Having negotiation managers 22 identify service providers from a database will give the service providers motivation to actively seek out negotiation managers 22, because if a service provider is not on a negotiation manager's 22 database, that service provider will not be advised of any negotiations by that negotiation manager 22 Methods for creating, accessing and maintaining such a database of service providers are well known in the art It is also contemplated that a centralized registry and/or database of service providers can be maintained by a third party or by the service providers themselves, for access by negotiation managers 22 In the embodiment shown in Figure 3, it is sufficient that the negotiation discipline 28 consist of a strategy which allows a proposal 26 to be negotiated that is satisfactory to each participant 24 In the simple case illustrated in Figure 2, the negotiation discipline 28 can consist of the negotiation manager 22 transferπng the proposal 26 back and forth between the first user's agent 18, second user's agent 19 and the telecommunication network's agent 20 without any interference or active participation by the negotiation manager 22 In such a case, the first user's agent 18 or second user's agent 19 can "time out" if the proposal 26 is not negotiated to a successful agreement withm a specific time peπod, in order to halt the negotiation Other negotiation disciplines 28, such as round robin bidding or other suitable strategies, can be employed in circumstances with more participants or wherein more complex negotiations, such as negotiations allowing trade-offs between cost and service qualities, are appropπate The present invention is not particularly limited to any particular negotiation discipline and appropπate disciplines will be apparent to those of skill in the art If the initial proposal 26 prepared by the first user's agent 18 is acceptable to the telecommunication network's agent 20, then the telecommunication network's agent 20 can approve the proposal 26 and return it to negotiation manager 22 unmodified and the negotiation manager 22 will then forward the proposal 26 to the second user's agent 19 to be considered Details on how the telecommunication network's agent 20 analyses the proposal 26 and responds will be descπbed with respect to Figure 5 descπbed below At step 36, negotiation manager 22 determines whether proposal 26 has been successfully negotiated, and if so, allows the contract, defined by the agreed negotiated proposal 26, to execute. The successful negotiation of the proposal 26 may be indicated by setting a flag or bit in the proposal 26 or by any other suitable means as will occur to those of skill in the art. Figure 5 descπbes the broad operation of telecommunication network's agent 20 in the form of a flow chart. As indicated above, the purpose of the telecommunication network's agent 20 is to represent the interests of the operator of telecommunication network 16 m negotiating a communication between the first user terminal device 12 and the second user terminal device 14. As telecommunication network 16 has at least one telecommunication means and protocol at its disposal, it may want to negotiate to optimize efficient use of its resources. Operation of telecommunication network's agent 20 can be straightforward. At step 38, the telecommunication network's agent 20 receives the proposal 26 from the negotiation manager 22. On the first iteration of a simple implementation as descπbed with respect to Figure 2 above, this proposal 26 will contain the information supplied by the first user's agent 18 as descπbed above Telecommunication network's agent 20 inspects the contents of this proposal 26 at step 40, and determines whether it is acceptable or not. If the terms of the proposal 26 are not acceptable, telecommunication network's agent 20 modifies the values of the set of parameters of the proposal 26 to terms it would find acceptable, at step 42. The modification of the terms of proposal 26 can include an outπght rejection of the communication, for example in the case of the network not having capability to implement the communication, or can be an adjustment of the values of one or more parameters to values better suited (on an economic basis, or a network utilization basis, etc.) to network 16. The modified proposal 26 is returned to the negotiation manager 22 at step 44. Negotiation manager 22 can, depending upon the negotiation discipline 28 employed, either return it to the first user's agent 18 for consideration of the new terms or forward it to the second user's agent 19 for consideration before returning it to first user's agent 18. In a simple case where the telecommunication network 16 has a very limited set of resources, the telecommunication network's agent 20 can compπse a simple algoπthm which generates new proposal 26 terms by referπng to a database of resources and standard rates. In a more sophisticated implementation, telecommunication network's agent 20 can comprise a rules-based agent that attempts to optimize use of the continuum of resources. For example, if telecommunication network 16 has access to ATM services, it can offer constant bit rate (CBR) transmission on a complete range from 10 Kb/s to 10 Mb/s, with a rate corresponding hnearly to the traffic level. In such an arrangement, telecommunication network's agent 20 would have to consider its cuπent traffic capacity, load, expected traffic and cost, in determining a counter offer that optimizes use of its resources. The implementation of such resource management methods is within the ability of one skilled in the art and is not discussed further herein. If the terms of proposal 26 are determined to be acceptable at step 40, then telecommunication network's agent 20 accepts the proposal 26 at step 46 and returns the proposal 26 to negotiation manager 22 at step 44. If the values of the parameters proposal 26 have not been changed by agent 20, negotiation manager 22 will know that the proposal is acceptable to agent 20. Alternatively, a bit or flag can be set by agent 20 explicitly indicating its acceptance of proposal 26. Figure 6 is a flowchart illustrating the broad operation of first user's agent 18 and, as will be apparent to those of skill in the art, the operation of second user's agent 19 is similar. This flow chart illustrates the operation of agent 18 response to a returned proposal 26, but the operation of agent 18 in creating the oπgmal proposal is similar and will be apparent to those of skill in the art. In broad terms, first user's agent 18 operates in a very similar manner to that of the telecommunication network's agent 20. As noted above, the purpose of first user's agent 18 is to represent the interests of the first user terminal device 12 negotiating a communication between the first user terminal device 12 and the second user terminal device 14. As the computational and communication resources and constraints of the first user terminal device 12 may only be known to itself, it may wish to negotiate a communication means and protocol that makes best use of its resources in view of the particular application that it is implementing For example, these resources and constraints can include processing speed, memory capacity and modem speed/data rate which can result in particular requirements and/or wants m the communication including minimum and maximum data rates, latency, frame or bit eπor rates, etc. Operation of first user's agent 18 commences at step 48 when agent 18 receives the modified proposal 26 from the Negotiation Manager 22. In the some implementations, first user's agent 18 may not have the functionality to initiate a communication negotiation. In the case of the first user's agent 18 not having the functionality to generate an initial proposal 26, the initial proposal 26 may be generated by another party in response to a request from first user terminal device 12, or may be generated as a default case by telecommunication network's agent 20 when first user terminal device 12 logs on to telecommunication network 16. Other similar methods for establishing an initial proposal will be apparent to those of skill in the art First user's agent 18 inspects the contents of the received proposal 26 at step 50, and determines whether the values for the parameters are acceptable or not. If the terms of the proposal 26 are not acceptable, the agent 18 modifies the values of the set of parameters of proposal 26 to terms it would find acceptable at step 52, or indicates an outπght rejection of proposal 26, and returns proposal 26 to the negotiation manager 22 at step 54. In a simple case, agent 18 may have a pre-defined set of limits that the first user terminal device 12 does not wish to exceed. For example, such limits can include: not accepting charges for any incoming calls (in which case the proposal can be modified to include an outπght rejection of such a proposed call), not exceeding the transmission rate of first user terminal device's 12 modem, or not accepting voice communication with less than toll quality. If a value of a parameter of an incoming proposal 26 exceeds any of these limitations, which can be identified with a simple logic test, a modified proposal 26 is generated which changes the parameter value, or values, so that they fall within the desired bounds or to reject the proposal First user's agent 18 can compπse a simple algoπthm which refers to a database of resources and preferences to prepare suitable changes to parameter values. In a more sophisticated implementation, the first user's agent 18 can compπse a rules-based engine that optimizes use of a continuum of resources, in a similar manner as the telecommunication network's agent 20 descπbed above. First user's agent 18 can, for example, negotiate the communication with consideration for the particular application and the computation and communication capabilities and requirements of the first user terminal device 12. The parameters available for consideration can correspond to end-to-end telecommunication parameters such as peak cell rate (PCR), tolerable cell delay vaπation (CVDT), cell transfer delay (CTD), cell loss ratio (CLR) and peak-to-peak delay vaπation (CDV). Such parameters are generally used in ATM to specify the QoS that a telecommunication service provides. Clearly, the invention may be applied with vaπous ones of these parameters, or different parameters known in the art, such as mean opinion score (MOS) for voice coder quality. Other subject measures are also possible with appropπate mappings as will be apparent to those of skill in the art. If the terms of the proposal 26 are determined to be acceptable at step 50, then agent 18 indicates its acceptance of the proposal 26 at step 56 and returns it to the negotiation manager 22 at step 54. As noted above, proposal 26 can have a bit or a flag set to explicitly indicate that it is acceptable to first user terminal device 12, or negotiation manager 22 can implicitly determine this by noting that no parameter values have been changed. The process repeats with second user's agent 19 until all parties have agreed to the same set of terms in proposal 26 or until the negotiation is terminated. Certain interfaces, such as a conventional telephone, will not directly have the computational operability to implement the user agent. In such a case, they can be assigned an agent by the negotiation manager 22 and that assigned agent will execute on appropriate hardware in negotiation manager 22 or elsewhere connected to the network 16. Similarly, a user who is remote from his terminal, can remotely access his agent executing at that terminal or elsewhere, for example, by entering a calling card number at a pay telephone. The system is operable to then seek out the user's agent, and the user will obtain, at that telephone, all of the features and preferences he had subscribed to, such as call waiting or call display, presuming they can be operated on the telephone. Figure 7 presents a more detailed flow chart of an embodiment of the present invention. The process begins at step 100 wherein a set of parameters, appropriate to the desired type of communication, is determined. This set of parameters is arranged in a hierarchy of stages, depending upon the relative importance of the parameters (e.g. - deal breakers, desired parameters or "don't cares") and their inter-dependencies, if any. This determination can be performed in a variety of manners, but it is presently contemplated that a communication request from a caller (first user) will be forwarded to the negotiation manager 22 and this request will outline the requirements of the caller and the called party or parties. Negotiation manager 22 will construct the appropriate set of parameters from this information, its information about network 16 and/or pre-defined schemas or templates for various types of connections. For example, it can be defined that any voice call will have at least a minimum set of parameters relating to: voice coders; overall latencies; who is paying for the call; whether call waiting, call display, etc. is enabled; etc. At step 104, an initial set of values for the parameters is established either solely by the negotiation manager 22, or by a combination of the negotiation manager and the first user's agent. It is contemplated that in other circumstances agents of other participants, such as the agent of the called party or the agent of one of the participating Service Providers can prepare the initial proposal, or at least assist in its creation. Further, in this example the initial set of values for the parameters includes values for parameters in all stages. However, it is contemplated that, in other circumstances, initial values will only be created for the first stage and initial values for subsequent stages will be created once values for the preceding stage have been agreed by the participants. Finally, step 104 also includes the transfer of the initial proposal, with initial values for at least one stage, to negotiation manager 22 (except in cases where negotiation manager 22 itself created the initial proposal). Next, a test is performed at step 106 to determine the next stage, if any, which needs to be negotiated and, assuming that one or more remaining stages exist, at step 110 a first participant is selected to receive and consider the proposal for that stage. The proposal is transferred to that participant whom considers it at step 114 and any parameter values which are unacceptable to that participant are modified by that participant. The proposal, with amendments if any, is returned to the negotiation manager 22 at step 118. At step 122, a determination is made as to whether any participants remain who have not yet reviewed the proposal If such participants exist, the process returns to step 110 where the next such participant is selected. If at step 122 no such participant exists, the process proceeds to step 126 where a determination is made as to whether an agreement of the parameter values of the present stage in the proposal has been achieved. If agreement has been reached, the process returns to step 106 where the next stage, if any, is selected and steps 110 through 126 are performed again. If no agreement has been reached at step 126, a determination is made at step 130 as to whether a negotiation limit has been reached. As mentioned above, a negotiation limit can be an absolute time limit, a count of negotiation rounds, recognition of the occurrence of a cycle in the proposal's parameter values or any other suitable metπc for determining that convergence of the negotiations of the present stage will not occur or will not occur in a reasonable time. If no such limit has been reached at step 130, the process returns to step 110 for another round of negotiation However, if such a limit has been reached at stage 130, the process proceeds to step 134 wherein the negotiations are terminated and forensic information is returned to negotiation manager 22 and/or the participants to enable them to take appropπate action. Once a determination is made at step 106 that no stages remain to be negotiated (l e - agreement has been reached at each stage), the process completes and the connection is established at step 138 with the agreed values for all parameters. In effect, the proposal has now been converted to a contract between the participants. It is contemplated that the negotiation may require one or more participants to refer to outside quotation services or other service providers to obtain cost quotations and/or to veπfy availability of resources. For example, a service provider may rent from a third party a link between two points in its network and the cost of that rental must be determined by the service provider in order to negotiate a pπce parameter. Similarly, a service provider may need to acquire software to implement a requested voice coder/decoder or data compressor/decompressor and will need to know the cost of acquiπng this software from a third party and/or the performance capabilities, computational requirements, etc. In the event that step 134 is reached and forensic information is returned to the participants, this information can be analyzed in an attempt to determine why the negotiation did not converge After analysis, one or more of the participants (usually at least the agent for the oπginating user) can alter one or more parameter values that were agreed at an earlier stage and recommence the negotiation at that stage For example, if the negotiation was halted at the third stage of negotiation, changes to the values of one or more parameters in the second, or even the first, stage can be made and the negotiations restarted at the earliest stage modified. The process illustrated in Figure 7 employs a Round Robin negotiating discipline 28 wherein each participant has a chance to review, in turn, the parameter values in a stage before they are agreed to. As will be apparent to those of skill in the art, and as mentioned above, other negotiating disciplines can be employed with the present invention. For example, each parameter can include a set of flags which indicate which participants have agreed to a proposed value for that parameter In such a case, step 130 can re-forward a proposal to only those participants who have not agreed to a proposed value While not shown in the process of Figure 7, in some circumstances two or more participants can be in competition in a negotiation. For example, two service providers can be interested in providing a link for a communication. In such a case, each service provider participates in a negotiation until a discrepancy between their desired values for one or more parameter is expeπenced and after which negotiation manager 22 selects the service provider with the more favorable value to continue in the negotiations and removes the other service provιder(s) from subsequent stages of the negotiation, which can simplify those subsequent stages. Of course, other strategies can be employed for selecting between competing participants, including allowing a user to specify his or her preferences (which could take incentives such as volume discounts or rebates m account), etc. It is contemplated that, as convergence and openness continues to develop in the telecommunications marketplace, the ability to negotiate with competing participants will provide a significant advantage over pπor art systems Figure 8 shows a flowchart of the method of re-commencmg a negotiation. In this Figure, steps which are the same as those of Figure 7 are indicated with the same step numbers As shown, the process recommences at step 142 where the proposal, with one or more previously agreed parameter values modified, is transferred to Negotiation Manager 22. This transfer can be from any one of the participants, but usually the originator of the request for the communication, after examining forensic information and/or modifying parameter values. At step 146, the negotiation commences for the parameter values in the earliest (highest) stage with a modified parameter value. The process proceeds next through steps 110, 114, 118, 122, 126, 106, 138 and/or 130 as before. In the event that step 150 is reached and the negotiation is terminated without agreement, the proposal and forensic information is returned to negotiation manager 22. Negotiation manager 22 can be configured to limit repetition of the modification and restart process of Figure 8 a fixed maximum number of times or with any other suitable strategy to ensure that the process stops, even when a negotiated agreement cannot be reached. Figure 9 shows an example of a very simple staged proposal. The highest stage SO, has a single parameter "Type of Connection" which can assume one of a plurality of predefined values such as, "voice call"; "file transfer"; "http session"; "video conference"; "streaming video"; etc. These values refer to generic definitions of connections which allow a network and or call recipient to quickly determine if the connection requested by the caller, is feasible and/or acceptable to the other participants. For example, if the "Type of Connection" is set to "streaming video" and the callee is at a cellular telephone terminal device, the callee cannot accept a streaming video connection. Once a value for "Type of Connection" has been agreed by the participants, negotiation of values for the parameters of the next stage, SI, can be negotiated. In this particular example, the parameters for which values are to be negotiated are dependent upon the value of the "Type of Connection" parameter that was negotiated in SO. In this example, "Type of Connection" has been agreed to have a value of "streaming video" and relevant parameters for this desired communication can include the expected average data rate requied, the maximum frame error rate that will occur and the maximum burst rate. Once appropriate values have been negotiated for these parameters (which values are likely dictated by the requirements of the streaming video format), the relevant parameters for the final stage S2 will have values negotiated. These parameters can include the cost of the connection and who will be billed for the connection. As will be apparent to those of skill in the art, various alternative to the hierarchy shown in Figure 9 are possible and can be employed depending upon the relative ranking of parameters by the user desiring the connection. For example, the "Type of Connection" which a participant will agree to can depend upon who is paying for the connection and/or how much it costs. Accordingly, the originator of the proposal could construct the hierarchy with the "Who Pays" and "Cost" parameters in stage SO, and the "Type of Connection" parameter being placed in SI. As descπbed above, negotiation in the context of the invention refers to a process in which each participant is able to consider a proposal and either accept or revise the proposal. This is contrast to the methods in the pπor art, particularly, the offer - acceptance model, such as US patent 5,859,979 where the oπg ating entity sends a list of options and a responding entity selects one. It is contemplated that existing telephony and data communication service providers can modify their routing equipment to apply the invention in a broad range of manners, including adding the new operabi ty as stand-alone equipment, or modifying their existing equipment accordingly and such developments are within the scope of the present invention. The above-descπbed embodiments of the invention are intended to be examples of the present invention and alterations and modifications may be effected thereto, by those of skill in the art, without departing from the scope of the invention which is defined solely by the claims appended hereto.

Claims: WHAT IS CLAIMED IS: 1. A method of establishing communication between at least two entities, where the characteristics of said communication are defined by a set of parameters, said method comprising the steps of: (i) arranging said set of parameters into a hierarchy of at least two stages, each stage including at least a different one parameter of said set of parameters; (ii) negotiating, for each stage in turn, values for said parameters in said stage with each of said at least two entities to produce a set of agreed parameter values for each said stage; and (iii) responding to agreement of parameter values at all stages by establishing said communication between said at least two entities according to said agreed values for said parameters. 2. The method as claimed in claim 1 wherein, in the case of failure to agree to values for said parameters in a stage at step (ii), said negotiations terminate. 3. The method as claimed in claim 2 wherein failure to agree is determined by a preset time limit being exceeded without agreement being reached. 4. The method as claimed in claim 2 wherein failure to agree is determined by the detection of occurrence of a recurring cycle in values proposed by said at least two entities for at least one parameter. 5. The method as claimed in claim 2 wherein failure to agree is determined by exceeding a predefined number of iterations in a stage at step (ii) without agreement being reached. 6. The method as claimed in claim 2 wherein, a terminated negotiation can be recommenced by at least one entity amending one or more parameter values in a previously agreed stage and recommencing said negotiating in step (ii) with all said at least two entities at said previously agreed stage. 7. The method as claimed in claim 1, where in step (ii) negotiation is performed in a round robin manner between all said at least two entities. 8. The method as claimed in claim 7 wherein, in the case of failure to agree to values for said parameters a stage at step (n), said negotiations terminate and wherein failure to agree is determined by a preselected number of rounds having been exceeded without agreement between said at least two entities as to one or more parameter values in a stage. 9. The method as claimed in claim 1 including at least three entities and wherein at least two of said at least three entities are in competition to establish said communication, further compπsing the step of in step (n) eliminating from further negotiations any of said at least two competing entities who will not agree to a parameter value agreed by the other of said at least two competing entities in said negotiation. 10. The method as claimed in claim 1 wherein each said entity is represented by an agent which participates in said negotiation on the behalf of said entity. 11. A telecommunications system compπsing: a first user terminal device, a second user terminal device; a telecommunications network operable to interconnect said first user terminal device with said second user terminal device; each of said first user terminal device, second user terminal device and said telecommunications network having an agent to represent its respective interests in negotiating a communication between said first user terminal device and said second user terminal device and each said Agent being operable to agree on values with each other agent for a set of parameters arranged in a hierarchy of stages to define a desired communication between said first user terminal device and said second user terminal device 12. A telecommunication method for negotiation between participants to establish a desired communication through a telecommunication network, the communication defined by a set of parameters arranged in a hierarchy of stages, the method compπsing the steps of, from the highest stage to the lowest stage in turn: (l) negotiating and agreeing values with said participants for the parameters of a stage under consideration; (ii) if values for one or more parameters in said stage under consideration cannot be agreed, termιnatιng said negotiation and notifying said participants accordingly, (in) if values for parameters in the stage of step (1) are agreed, performing steps (1), (n) and (in) for each succeeding stage in said hierarchy; (IV) when values for all parameters in all stages have been agreed, said participants establishing said desired communication. 13. The method as claimed in claim 12, wherein if said negotiation is terminated at step (n), forensic information relating to said failure is provided to each participant and wherein one or more of said participants can modify a value for a parameter in a previously agreed stage and can reinitiate said negotiation at said previously agreed stage with said modified value 14. The method of claim 12 wherein step (I) employs a Round Robin negotiating discipline wherein each participant can agree in turn to the set of parameter values in a stage, before negotiations in said stage are deemed to have been completed 15. The method of claim 12 wherein two or more participants compete within a stage and said competing participants with the most favorable terms, as defined by values for said parameters in said stage, are selected for inclusion in subsequent stages and any other competing participants are removed from the negotiation of said subsequent stages. 16. The method of claim 12 wherein at least one of said participants is a user interface 17 The method of claim 12 wherein said communication is a point to point link.

Inventors: PREISS BRUNO R, PREISS, BRUNO, R.
Applicants: PREISS BRUNO R, SOMA NETWORKS INC, PREISS, BRUNO, R., SOMA NETWORKS, INC.
Application year: 2001
Main classification: H04L12
IPC codes: H04L12, H04Q11