1460760579-3c0985c9-7d13-41d7-b825-2b80c86f07f7

1. A method for certifying the presence of an operator, comprising the following steps:
a presence code being requested at a given time instant to a first device operable by a user;
said first device generating said presence code, wherein said presence code comprises a portion generated according to an encoding algorithm, wherein said generated portion depends on said time instant and on an identifier of said first device;
a second device operable by an operator storing said generated presence code;
said presence code being transmitted to a third validation device;
said third validation device certifies the presence of said operator at said user at said time instant,
wherein said certification comprises:
providing said third validation device with at least one piece of time information about said time instant, and further providing said identifier of said first device, wherein said presence code is validated by comparing it with at least one second presence code generated by said third validation device according to the same said encoding algorithm and according to said at least one piece of time information and according to said identifier, wherein said certification occurs if said comparison shows a match between said presence code and said at least one second presence code.
2. A method according to claim 1, wherein said presence code is validated by comparing it with a plurality of further presence codes generated by said third validation device for a respective plurality of time instants within a time interval dependent on said at least one piece of time information.
3. A method according to claim 2, wherein said piece of time information relates to the date of generation of said presence code.
4. A method according to claim 1, wherein said identifier of said first device is associated with a private encryption key for generating said presence code.
5. A method according to claim 1, wherein said encoding algorithm is such as to not allow to univocally and directly derive said time instant from said generated presence code.
6. A method according to claim 1, wherein said encoding algorithm generates presence codes having limited time validity and based on the current time.
7. A method according to claim 6, wherein said algorithm comprises hashing functionalities.
8. A method according to claim 6, wherein said presence codes are of the Time-based-One-Time-Password type, based on the Open-AuTHentication standard.
9. A method according to claim 1, wherein said second device transmits said presence code to said third validation device.
10. A method according to claim 9, wherein said second device requests said presence code to said first device, and wherein said first device transmits said presence code to said second device upon receiving said request.
11. A method according to claim 10, further comprising the step of verifying the geographic position of said first device andor of said second device upon issuing said request, wherein said presence code is only generated or transmitted if said geographic position is within a predetermined area.
12. A method according to claim 9, wherein said presence code is transmitted through wireless devices, preferably RFID or Bluetooth devices.
13. A method according to claim 10, further comprising the step of verifying the distance between said second device and said first device upon issuing said request, wherein said presence code is only generated or stored if said distance is shorter than a predetermined distance.
14. A system for certifying the presence of an operator, comprising:
a first device operable by a user, which is adapted to generate a presence code that comprises a portion generated according to an encoding algorithm dependent on the time instant at which said generation occurs and on an identifier of said first device, and
further comprising a second device operable by an operator, which comprises a memory area for storing said presence code, and
further comprising a third validation device adapted to receive said presence code, wherein said third validation device is adapted to certify said presence by validating said presence code, said third validation device being adapted to receive at least one piece of time information about said time instant, and to further receive said identifier,
wherein said third validation device is adapted to validate said presence code by generating at least one second presence code according to the same said encoding algorithm and to said at least one piece of time information and to said identifier, and by comparing said presence code with said at least one second presence code generated, wherein said third validation device is adapted to provide said certification if said comparison shows a match between said presence code and said at least one second presence code.
15. A system for certifying the presence of an operator that is configured to implement the method according to claim 1.
16. A computer comprising a program specifically adapted to implement a validation of a presence code for certifying the presence of an operator, wherein said certification is carried out through the method claim 1.
17. (canceled)
18. A mobile terminal operable by an operator, comprising a memory area for storing a presence code, and further comprising processing means configured for certifying the presence of an operator, wherein said certification is carried out through the method claim 1.
19. A computer readable storage media comprising non-transitory instructions that, when run on a computer system, implement a validation of a presence code for certifying the presence of an operator, wherein said certification is carried out through the method of claim 1.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A method for determining participation of nodes of a network in a query, the method comprising:
an initiating node initiating a first evaluation round by creating a message identifying a query to be answered by participating nodes and sending the message to one of the nodes;
each node in the network other than the initiating node:
(a) receiving the message,
(b) determining its participation policy rule for the query,
(c) indicating in the message that the node will participate in the query if its policy rule permits it, and
(d) sending the message to another node; and

the initiating node receiving the message after each other node has indicated whether it will or will not participate and logging the participation results.
2. The method of claim 1, further comprising the initiating node initiating a second evaluation round by resending the message to one of the nodes;
each node in the network other than the initiating node repeating actions (a)-(d);
the initiating node again receiving the message after each other node has indicated whether it will or will not participate and logging the participation results; and
the initiating node determining whether the number of nodes indicating they will participate is the same in two sequential rounds and, if so, noting the nodes that will participate in the query and, if not, initiating one or more subsequent rounds until the same number of nodes indicate they will participate in two consecutive rounds.
3. The method of claim 1, further comprising the initiating node retrieving a list of nodes prior to sending the message in the first evaluation round, wherein the list identifies each node by a node ID that does not reveal the identity or network location of the node.
4. The method of claim 3, further comprising the initiating node randomly selecting a node ID from the list as the node to which to send the created message.
5. The method of claim 4, wherein the initiating node sending the message to one of the nodes comprises the initiating node sending the message to a message broker independent of all of the nodes that will route the message to the selected node, wherein only the message broker knows the network locations of the nodes and uses the selected node ID to look up the network location of the selected node.
6. The method of claim 1, wherein a node determining its participation policy rule for the query comprises the node determining whether the node will participate in the query always, never, or only if at least a certain number of other nodes participate.
7. The method of claim 6, wherein, in the first evaluation round, each node other than the initiating node indicates it will participate if its participation policy rule for the query depends upon the number of other nodes that participate.
8. The method of claim 1, wherein a node indicating in the message that the node will participate in the query comprises the node adding its node ID to the message to indicate that the node should be included in the next evaluation round, if any.
9. The method of claim 1, wherein each node other than the initiating node sending the message to another node comprises identifying a list of node IDs in the message, selecting one of the node IDs at random, and sending the message to a message broker independent of all of the nodes that will route the message to the selected node, wherein only the message broker knows the network locations of the nodes and uses the selected node ID to identify the network location of the selected node.
10. The method of claim 1, further comprising, prior to any node sending a message to another node in the network, each node registering with an independent message broker.
11. The method of claim 10, wherein registering comprises authenticating each node.
12. The method of claim 1, wherein each node encrypts the message before sending it to another node.
13. A method for collecting a response to a query from nodes of a network, the method comprising:
an initiating node initiating a first data round by adding to a message its own true response to the query along with obfuscation data that conceals the true response, and then sending the message to one of the nodes;
each node in the network other than the initiating node receiving the message, adding to the message its own true response and obfuscation data to the initiating node’s true response and obfuscation data, and sending the message to another node;
the initiating node receiving the message after each other node has added its true response to the message, altering the initiating node’s obfuscation data in the message, and initiating a second data round by resending the message to one of the nodes;
each node in the network other than the initiating node receiving the message, removing its own obfuscation data from the message, and sending the message to another node; and
the initiating node again receiving the message after each other node has removed its obfuscation data, removing the initiating node’s obfuscation data, identifying the final result of the query, and sending the final result to each node.
14. The method of claim 13, further comprising the initiating node retrieving a list of nodes prior to sending the message in the first data round, wherein the list identifies each node by a node ID that does not reveal the identity or network location of the node.
15. The method of claim 14, further comprising the initiating node randomly selecting a node ID from the list as the node to which to send the message.
16. The method of claim 15, wherein the initiating node sending the message to one of the nodes comprises the initiating node sending the message to a message broker independent of all of the nodes that will route the message to the selected node, wherein only the message broker knows the network locations of the nodes and uses the selected node ID to look up the network location of the selected node.
17. The method of claim 13, wherein each node other than the initiating node sending the message to another node comprises identifying a list of node IDs in the message, selecting one of the node IDs at random, and sending the message to a message broker independent of all of the nodes that will route the message to the selected node, wherein only the message broker knows the network locations of the nodes and uses the selected node ID to look up the network location of the selected node.
18. The method of claim 13, further comprising, prior to any node sending a message to another node in the network, each node registering with an independent message broker.
19. The method of claim 18, wherein registering comprises authenticating each node.
20. The method of claim 13, wherein each node encrypts the message before sending it to another node.
21. The method of claim 13, wherein the true responses and the obfuscation data are numbers that are added together and wherein the final result is also a number.
22. A trusted query network comprising:
multiple clients, each client being configured to initiate queries by creating a message identifying a query to be answered by participating clients and sending the message to the other clients, each client further being configured to, during a first data round, add to the message a true response to the query and obfuscation data, the obfuscation data concealing the true response and to, during a second data round, remove its obfuscation data.
23. The trusted query network of claim 22, each client further being configured to receive messages created by other clients, to determine whether or not the client will participate in a query initiated by another client, to indicate in the message the client’s willingness to participate in the query, and to forward the message on to another client.
24. The trusted query network of claim 22, each client further being configured to retrieve a list of clients prior to sending a message it created, the list identifying each client by a node ID that does not reveal the identity or network location of the node.
25. The trusted query network of claim 22, further comprising a message broker independent from each of the clients, the message broker being configured to receive messages sent by the clients and intended for other clients and route the messages to the intended clients.
26. The method of claim 25, wherein only the message broker knows the network locations of the clients and uses the selected node ID to look up the network location of the selected client.
27. The trusted query network of claim 22, each client further being configured to randomly select another client to which to send or forward a message.
28. The trusted query network of claim 22, each client being configured to participate in a given query always, never, or only if a certain number of other clients participate.
29. The trusted query network of claim 22, each client further being configured to encrypt a message before sending or forwarding it to another node.
30. The trusted query network of claim 22, further comprising an authentication system that authenticates each client before the client can send a message to another client.
31. The trusted query network of claim 22, wherein the true responses and the obfuscation data are numbers that are added together.

1460760570-0c1f8c32-3cbf-4743-ac40-084d94fe37e9

We claim:

1. A simulation controller comprising:
a global process manager;
a model manager created by the global process manager, generating models when requested by the global process manager;
a vector manager created by the global process manager, generating vectors when requested by the global process manager; and
wherein the global process manager manages the models and vectors received by a simulator.
2. A simulation environment, as defined in claim 1, further comprising a simulator, connected to the global process, model, and vector managers, that receives the models and vectors in accordance to instructions provided by the global process manager.
3. A simulation controller, as defined in claim 2, wherein:
the model manager instantiates and configures models upon request of the global process manager; and
these models can direct the creation of new models.
4. A simulation controller, as defined in claim 3, wherein:
the model manager manages the models such that all models are generated and configured sequentially; and
all of the models enter simulation time in parallel.
5. A simulation controller, as defined in claim 1, wherein:
the model manager instantiates and configures models upon request of the global process manager; and
these models may direct the creation of new models.
6. A simulation controller, as defined in claim 5, wherein:
the model manager manages the models such that all models are generated and configured sequentially; and
all of the models enter simulation time in parallel.
7. A simulation control method comprising the steps of:
generating a model manager operative to list the models to be used by a simulator;
generating a vector manager operative to manage the vectors to be used by a simulator;
instantiating a global testbench;
instantiating vectors to be used by the global testbench and simulator;
instantiating the interface models to be simulated with the global testbench; and
configuring the global testbench and interface models to be used by the simulator.
8. A simulation control method, as defined in claim 4, further comprising the step of managing the vectors, the global testbench, and interface models such that the simulator simulates.
9. A simulation control method, as defined in claim 5, further comprising the steps of:
receiving simulation results; and
analyzing the simulation results.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A system for processing packets of information, the system comprising:
an ingress module comprising an L2TP Access Concentrator (LAC), the ingress module receiving a plurality of packets of information from a first network, the ingress module determining the type of each of the plurality of packets; and
a route server module comprising an L2TP Network server (LNS), the route server module being coupled to the ingress module, the route server module sending a distributed processing request to the ingress module;
wherein the ingress module receives the distributed processing request and, responsively, performs Multi-Protocol Label Switching (MPLS) processing on data packets of the plurality of packets having an MPLS label and routes the MPLS processed packets in accordance with the MPLS label;
wherein the ingress module forwards non-data packets of the plurality of packets of information to the route server module via an L2TP tunnel established between the LAC and the LNS; and
wherein the route server module receives the non-data packets of the plurality of packets of information and performs centralized processing operations on the non-data packets.
2. The system of claim 1, wherein the MPLS processing comprises swapping a first MPLS label with a second MPLS label.
3. The system of claim 1, wherein the centralized processing comprises establishing a connection with an entity on the Internet.
4. A method comprising:
receiving a plurality of packets of information from a first network at an ingress module, the ingress module comprising an L2TP Access Concentrator (LAC);
determining the type of each of the plurality of packets;
sending a distributed processing request from a route server module to the ingress module, the route server module comprising an L2TP Network server (LNS);
receiving the distributed processing request at the ingress module and, responsively, performing Multi-Protocol Label Switching (MPLS) processing on data packets of the plurality of packets having an MPLS label and routes the MPLS processed packets in accordance with the MPLS label;
forwarding non-data packets of the plurality of packets of information from the ingress module to the route server module via an L2TP tunnel established between the LAC and the LNS; and
receiving the non-data packets of the plurality of packets of information at the route server module and performing centralized processing on the non-data packets at the route server module.
5. The system of claim 4, wherein the MPLS processing comprises forwarding the data packets of the plurality of packets of information to an egress module.
6. The system of claim 4, wherein the centralized processing comprises establishing a connection with an entity on the Internet.
7. A routing device comprising:
an ingress portion comprising an L2TP Access Concentrator (LAC), the ingress portion receiving negotiation packets; and
a route server portion coupled to the ingress portion, the route server portion comprising an L2TP Network server (LNS), the route server portion receiving the negotiation packets from the ingress portion via an L2TP tunnel established between the LAC and the LNS and completing a negotiation, the route server portion sending a distributed switching request message to the ingress portion upon the completion of a negotiation;
wherein the ingress portion receives the distributed switching request message and, responsively, sends a reply message to the route server portion; and
wherein the ingress portion, upon the receipt of the distributed switching request message, performs Multi-Protocol Label Switching (MPLS) processing on subsequently received data packets having an MPLS label and routes the MPLS processed packets in accordance with MPLS label.
8. The routing device of claim 7 wherein the ingress portion determines a forwarding equivalence class.
9. The routing device of claim 7, wherein the data packets include labeling information and the ingress portion uses the label information from the data packets to determine an outgoing link.
10. The routing device of claim 7, wherein the ingress portion forwards all control packets to the route server portion via the tunnel established between the LAC and the LNS.
11. The routing device of claim 7, wherein all MPLS LDP, CRLDP, or RSVP packets are routed to the route server portion via the tunnel established between the LAC and the LNS.
12. A system comprising:
means for receiving a plurality of packets of information from a first network at an ingress module comprising an L2TP Access Concentrator (LAC);
means for determining the type of each of the plurality of packets;
means for sending a distributed processing request from a route server module comprising an L2TP Network Server (LNS) to the ingress module;
means for receiving the distributed processing request at the ingress module and, responsively, performing Multi-Protocol Label Switching (MPLS) processing on data packets of the plurality of packets having an MPLS packets of the plurality of packets having an MPLS label and routes the MPLS processed packets in accordance with the MPLS label;
means for forwarding non-data packets of the plurality of packets of information from the ingress module to the route server module via an L2TP tunnel established between the LAC and the LNS; and
means for receiving the non-data packets of the plurality of packets of information at the route server module and performing centralized processing on the non-data packets of the plurality of packets of information at the route server module.
13. A computer program on a computer readable medium, the program comprising:
first code for receiving a plurality of packets of information from a first network at an ingress module comprising an L2TP Access Concentrator (LAC);
second code for determining the type of each of the plurality of packets;
third code for sending a distributed processing request from a route server module comprising an L2TP Network Server (LNS) to the ingress module;
fourth code for receiving the distributed processing request at the ingress module and, responsively, performing Multi-Protocol Label Switching (MPLS) processing on data packets of the plurality of packets packets of the plurality of packets having an MPLS label and routes the MPLS processed packets in accordance with the MPLS label;
fifth code for forwarding non-data packets of the plurality of packets of information from the ingress module to the route server module via an L2TP tunnel established between the LAC and the LNS; and
sixth code for receiving the non-data packets of the plurality of packets of information at the route server module and performing centralized processing on the non-data packets of the plurality of packets of information at the route server module.
14. The system of claim 1, wherein the MPLS processing comprises assigning an MPLS label to each of the data packets.
15. The system of claim 1, wherein the non-data packets comprise packets selected from the group consisting of (i) control packets, (ii) routing protocol packets, (iii) MPLS label distribution protocol (LDP) packets, (iv) Constraint Based LDP (CRLDP) packets, and (v) Resource Reservation Protocol-Traffic Engineering (RSVP-TE) packets.
16. The method of claim 4, further comprising:
removing a Point-to-Point Protocol (PPP) header from each of the data packets of the plurality of packets at the ingress module.
17. The method of claim 16, further comprising:
performing decompression on the data packets of the plurality of packets at the ingress module.
18. The method of claim 4, further comprising:
encapsulating each of the data packets with a Point-to-Point Protocol (PPP) header; and
forwarding the encapsulated packet to a destination on a second network that carries packets according to the PPP.
19. The method of claim 18, further comprising:
performing compression on the data packets of the plurality of packets at the ingress module.
20. The method of claim 4, wherein prior to receiving the distributed processing request at the ingress module, the ingress module tunnels all received packets of the plurality of packets of information to the route server module via the tunnel established between the LAC and the LNS.
21. The method of claim 4, further comprising:
receiving, at the ingress module, routing table entries sent from the route server module.
22. The method of claim 4, wherein sending the distributed processing request from the route server module to the ingress module occurs in response to the route server module completing a given centralized processing operation selected from the group consisting of (i) a Point-to-Point Protocol negotiation process, and (ii) an MPLS negotiation process.