Meta-protocol
Abstract
The present invention teaches a multi-layer protocol management system and method, embeddable in a tangible computer-readable medium, that allow for on-the-fly machine-readable protocol discovery and negotiation, distribution of protocol specifications and components, automatic implementation of protocols from corresponding machine-readable protocol specifications, and corresponding execution of automatically generated implementations. Automatic protocol implementation may be accomplished using eXtensible Markup Language (XML)-related technologies and Component-based Software Engineering (CBSE). The present invention is also a tangible computer-readable medium encoded with instructions capable of generating, as well as capable of being designed to generate, protocol specifications. A program of instructions, called XML-based protocol specification language (XPSL), may be used for creating a specification of a communication protocol (such as high-level specifications of a protocol) in a machine readable form. Using CBSE principles, XPSL may also be used for allowing high-level specifications of a protocol, expressible in Finite State Machines (FSM). An eXtensible Stylesheet Language for Transformations (XSLT) may be used to transform specification description into actual code. XSLT stylesheets can be designed to produce code in different programming languages (e.g., C++ or Java). CBSE may be used to build a set of operations needed by a protocol.
Claims
exact text as granted — not AI-modified1 . A tangible computer readable medium encoded with instructions for generating protocol specifications, executable by a machine under the control of a program of instructions, in which said machine includes a memory storing said program, wherein execution of said instructions by one or more processors causes said one or more processors to perform a multitude of steps comprising:
a. using at least one first element, said at least one first element including at least one protocol element, each of said at least one protocol element capable of being used as a root of an XML protocol specification document; b. adding at least one second element, said at least one second element including at least one first-state element, each of said at least one first-state element capable of specifying the starting state of a Finite State Machine (FSM); and c. adding at least one third element, wherein said at least one third element includes at least one state element, for each state in said FSM.
2 . A tangible computer readable medium according to claim 1 , further comprising:
a. adding at least one fourth element, said at least one fourth element including at least one object element, each of said at least one object element capable of defining data.
3 . A tangible computer readable medium according to claim 1 , further comprising:
a. adding at least one fifth element, said at least one fifth element including at least one instance element, each of said at least one instance element capable of holding actual data.
4 . A tangible computer readable medium according to claim 1 , further comprising:
a. adding at least one sixth element, said at least one sixth element including at least one action element, each of said at least one action element capable of defining actions required by each state.
5 . A tangible computer readable medium according to claim 4 , further comprising:
a. adding at least one seventh element, said at least one seventh element including at least one moveto element, each of said at least one moveto element capable of indicating the next state.
6 . A tangible computer readable medium according to claim 5 , further comprising:
a. adding at least one eighth element, said at least one eighth element including at least one expression element, capable of serving as a logical expression for producing a set of predefined values; and b. adding at least one ninth element, said at least one ninth element including at least one case element, capable of serving as a list of cases for pointing to the next state for each possible value of said logical expression.
7 . A tangible computer readable medium according to claim 1 , wherein the step of said “adding at least one third element” further comprises at least one of the following steps:
a. adding at least one fourth element, said at least one fourth element including at least one object element, each of said at least one object element capable of defining data; b. adding at least one fifth element, said at least one fifth element including at least one instance element, each of said at least one instance element capable of holding actual said data; c. adding at least one sixth element, said at least one sixth element including at least one action element, each of said at least one action element capable of performing actions required by each state; d. adding at least one seventh element, said at least one seventh element including at least one moveto element, each of said at least one moveto element capable of indicating the next state; e. adding at least one tenth element, said at least one tenth element including at least one arg element, each of said at least one arg element capable of facilitating the passing of data objects to said at least one state element; and f. adding at least one eleventh element, said at least one eleventh element including at least one name element, each of said at least one name element capable of identifying elements.
8 . A tangible computer readable medium according to claim 1 , further comprising:
a. adding at least one eleventh element, said at least one eleventh element including at least one name element, each of said at least one name element capable of identifying elements.
9 . A tangible computer readable medium according to claim 1 , in which said protocol specifications include at least one XML protocol specification.
10 . A tangible computer readable medium according to claim 1 , in which said protocol specifications include a description of a protocol specification language specified in an XML schema.
11 . A protocol management system having a layered approach comprising:
a. a negotiation layer capable of allowing communicating parties to agree upon at least one protocol specification, wherein said negotiation layer includes a negotiation mechanism; b. a distribution layer capable of retrieving and/or distributing said at least one protocol specification and any missing component, wherein said distribution layer includes a delivery mechanism; c. an implementation layer capable of using eXtensible Stylesheet Language Transformations (XSLT) for converting said at least one protocol specification and said any missing component into at least one executable code capable of implementing said at least one protocol specification and said any missing component, wherein said implementation layer includes a machine-readable protocol specification converter; and d. an execution layer capable of loading and/or running said at least one executable code, wherein said execution layer includes an executable code system manager.
12 . A protocol management system according to claim 11 , further including at least one searchable repository system, said at least one searchable repository system capable of storing said at least one protocol specification and said any missing component.
13 . A protocol management system according to claim 11 , further including at least one security measure, said at least one security measure capable of protecting said system.
14 . A protocol management system according to claim 11 , wherein said negotiation layer uses at least one of the following approaches:
a. a manual approach; and b. an automatic approach, wherein said automatic approach includes at least one of the following:
i. a secure channel; and
ii. a customized version of the Internet Security Association and Key Management Protocol (ISAKMP).
15 . A protocol management system according to claim 14 , wherein a protocol specification using said customized version of ISAKMP is a bootstrap of said system.
16 . A protocol management system according to claim 11 , wherein said distribution layer uses at least one directory service.
17 . A protocol management system according to claim 11 , wherein said distribution layer is capable of distributing at least one digitally signed protocol specification.
18 . A protocol management system according to claim 11 , wherein said distribution layer is capable of distributing at least one digitally signed component referenced in a protocol specification.
19 . A protocol management system according to claim 11 , wherein said distribution layer is capable of retrieving said at least one protocol specification from a local cache.
20 . A protocol management system according to claim 11 , wherein said implementation layer produces code that implements said at least one protocol specification automatically using:
a. XML-related technologies, wherein said XML-related technologies include XML schema, XSLT transformations, XSLT processors, XML parsers, and XML editors; and b. a multitude of components referenced in said at least one protocol specification.
21 . A protocol management system according to claim 20 , wherein said system uses Component-based Software Engineering to build said “multitude of components referenced in said at least one protocol specification.”
22 . A protocol management system according to claim 11 , wherein a single XSLT stylesheet is associated with a single programming language, said XSLT stylesheet capable of generating said at least one executable code for a multitude of said at least one protocol specification, wherein said at least one executable code is an implementation of said at least one protocol specification.
23 . A protocol management system according to claim 11 , wherein said at least one executable code of said at least one protocol specification is retrieved from a local cache.
24 . A protocol management system according to claim 11 , wherein said execution layer comprises at least one of the following:
a. at least one interface responsible for delivering requests and feedback between the external world and said execution layer; and b. at least one control operation capable of managing internal affairs of said execution layer.
25 . A protocol management system according to claim 11 , in which said at least one protocol specification includes at least one XML protocol specification.
26 . A protocol management system according to claim 11 , in which said at least one protocol specification includes a description of a protocol specification language specified in an XML schema.
27 . A method for managing protocols comprising the steps of:
a. agreeing upon at least one protocol specification; b. retrieving and/or distributing said at least one protocol specification and any missing component; c. converting said at least one protocol specification and said any missing component into at least one executable code, said at least one executable code is an implementation of said at least one protocol specification; and d. loading and/or running said at least one executable code.
28 . A method according to claim 27 , further including the step of storing said at least one protocol specification and said any missing component.
29 . A method according to claim 27 , further including the step of protecting said method of managing protocols using at least one security measure.
30 . A method according to claim 27 , wherein the step of “agreeing” uses at least one of the following approaches:
a. a manual approach; and b. an automatic approach, wherein said automatic approach includes at least one of the following:
i. a secure channel; and
ii. a customized version of the Internet Security Association and Key Management Protocol (ISAKMP).
31 . A method according to claim 30 , wherein said at least one protocol specification using said customized version of ISAKMP is a bootstrap of said method.
32 . A method according to claim 27 , wherein the step of “retrieving and/or distributing” further includes using at least one directory service.
33 . A method according to claim 27 , wherein the step of “retrieving and/or distributing” further includes distributing at least one digitally signed protocol specification.
34 . A method according to claim 27 , wherein the step of “retrieving and/or distributing” further includes distributing at least one digitally signed component referenced in a protocol specification.
35 . A method according to claim 27 , wherein the step of “retrieving and/or distributing” further includes retrieving said at least one protocol specification from a local cache.
36 . A method according to claim 27 , wherein the step of “converting” further includes producing code that implements said at least one protocol specification automatically using:
a. XML-related technologies, wherein said XML-related technologies include XML schema, XSLT transformations, XSLT processors, XML parsers, and XML editors; and b. a multitude of components referenced in said at least one protocol specification.
37 . A method according to claim 36 , wherein said method uses Component-based Software Engineering to build said “multitude of components referenced in said at least one protocol specification.”
38 . A method according to claim 27 , wherein a single XSLT stylesheet is associated with a single programming language, said XSLT stylesheet capable of generating said at least one executable code for a multitude of said at least one protocol specification, wherein said at least one executable code is an implementation of said at least one protocol specification.
39 . A method according to 27 , wherein the step of “converting” further includes retrieving at least one executable code associated with at least one protocol specification from a local cache.
40 . A method according to 27 , wherein the step of “loading and/or running” comprises at least one of the following steps:
a. delivering requests and feedback; and b. managing internal affairs.
41 . A method according to claim 27 , in which said at least one protocol specification includes at least one XML protocol specification.
42 . A method according to claim 27 , in which said at least one protocol specification includes a description of a protocol specification language specified in an XML schema.
43 . A tangible computer readable medium comprising instructions for a method of managing protocols, said tangible computer readable medium executable by a machine under the control of a program of instructions, in which said machine includes a memory storing said program, wherein said instructions comprise the steps of:
a. agreeing upon at least one protocol specification; b. retrieving and/or distributing said at least one protocol specification and any missing component; c. converting said at least one protocol specification and said any missing component into at least one executable code, said at least one executable code is an implementation of said at least one protocol specification; and d. loading and/or running said at least one executable code.
44 . A tangible computer readable medium according to claim 43 , wherein said instructions further include the step of storing said at least one protocol specification and said any missing component.
45 . A tangible computer readable medium according to claim 43 , wherein said instructions further include the step of protecting said method of managing protocols using at least one security measure.
46 . A tangible computer readable medium according to claim 43 , wherein the step of “agreeing” uses at least one of the following approaches:
a. a manual approach; and b. an automatic approach, wherein said automatic approach includes at least one of the following:
i. a secure channel; and
ii. a customized version of the Internet Security Association and Key Management Protocol (ISAKMP).
47 . A tangible computer readable medium according to claim 46 , wherein said at least one protocol specification using said customized version of ISAKMP is a bootstrap of said method.
48 . A tangible computer readable medium according to claim 43 , wherein the step of “retrieving and/or distributing” further includes using at least one directory service.
49 . A tangible computer readable medium according to claim 43 , wherein the step of “retrieving and/or distributing” further includes distributing at least one digitally signed protocol specification.
50 . A tangible computer readable medium according to claim 43 , wherein the step of “retrieving and/or distributing” further includes distributing at least one digitally signed component referenced in a protocol specification.
51 . A tangible computer readable medium according to claim 43 , wherein the step of “retrieving and/or distributing” further includes retrieving said at least one protocol specification from a local cache.
52 . A tangible computer readable medium according to claim 43 , wherein the step of “converting” further includes producing code that implements said at least one protocol specification automatically using:
a. XML-related technologies, wherein said XML-related technologies include XML schema, XSLT transformations, XSLT processors, XML parsers, and XML editors; and b. a multitude of components referenced in said at least one protocol specification.
53 . A tangible computer readable medium according to claim 52 , wherein said method uses Component-based Software Engineering to build said “multitude of components referenced in said at least one protocol specification.”
54 . A tangible computer readable medium according to claim 43 , wherein a single XSLT stylesheet is associated with a single programming language, said XSLT stylesheet capable of generating said at least one executable code for a multitude of said at least one protocol specification, wherein said at least one executable code is an implementation of said at least one protocol specification.
55 . A tangible computer readable medium according to 43 , wherein the step of “converting” further includes retrieving at least one executable code associated with at least one protocol specification from a local cache.
56 . A tangible computer readable medium according to 43 , wherein the step of “loading and/or running” comprises at least one of the following steps:
a. delivering requests and feedback; and b. managing internal affairs.
57 . A tangible computer readable medium according to claim 43 , in which said at least one protocol specification includes at least one XML protocol specification.
58 . A tangible computer readable medium according to claim 43 , in which said at least one protocol specification includes a description of a protocol specification language specified in an XML schema.Join the waitlist — get patent alerts
Track US2006036755A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.