Claims
- 1. An apparatus for routing content through a network based on semantics of the content being routed comprising:
a computer comprising;
at least one network interface card; a signaling agent; a forwarding agent; a load manager; and a semantic profile manager.
- 2. The apparatus as in claim 1 wherein
the signaling agent handles communication between the apparatus and other routing apparatus and determines the connectivity to the other routing apparatus; the forwarding agent forwards incoming semantic packets; the load manager manages a processing load of the routing apparatus; and the profile manager aggregates semantic profiles.
- 3. The apparatus as in claim 2 wherein the semantic profiles are aggregated into ontological trees that are used to form routing tables.
- 4. The apparatus as in claim 3 wherein the load manager manages the processing load of the routing apparatus by reducing precision in the aggregated semantic profiles.
- 5. The apparatus as in claim 3 wherein the signaling agent sends the aggregated semantic profiles to the other routing apparatus to update the routing data of the other routing apparatus.
- 6. The apparatus as in claim 1 wherein the profile manager, the load manager and the signaling agent interact to balance processing load of the routing apparatus.
- 7. The apparatus as in claim 1 wherein the load manager manages processing load partly by delegating the processing load of the routing apparatus to neighboring routing apparatus.
- 8. The apparatus as in claim 1 wherein the load manager interacts with other routing apparatus and a semantic log keeper to become aware of current topology of the network.
- 9. The apparatus as in claim 1 wherein the forwarding agent is composed of a routing cache and routing data.
- 10. The apparatus as in claim 9 wherein the forwarding agent routes incoming semantic packets to their destination by using information included in the routing cache.
- 11. The apparatus as in claim 10 wherein the forwarding agent analyzes the semantic description of the semantic packet to determine the destination of the semantic packet.
- 12. A method for routing content through a network based on semantics of the content being routed comprising the steps of:
receiving a semantic profile; aggregating the semantic profile with other semantic profiles; receiving a semantic packet; and routing the semantic packet to a destination based on a comparison between the content included in the semantic packet and the aggregated semantic profiles.
- 13. The method as in claim 12 further comprising classifying the content before creating the semantic packet.
- 14. The method as in claim 12 further comprising filtering the routed semantic packet before reaching a content consumer.
- 15. The method as in claim 12 wherein the semantic packet comprises a header and content.
- 16. The method as in claim 15 wherein the header is in a networking community programming language.
- 17. The method as in claim 15 wherein the header is in XML markup language.
- 18. The method as in claim 15 wherein the header of the semantic packet comprises a preamble, at least one semantic signature, and at least one semantic descriptor.
- 19. The method as in claim 18 wherein the semantic descriptors of the semantic packet further comprises environment specific information.
- 20. The method as in claim 18 wherein the semantic descriptors of the semantic packet further comprises customized information.
- 21. The method as in claim 18 further comprising a forwarding agent which routes the semantic packet through the network using the semantic signature.
- 22. The method as in claim 12 wherein said method is deployed as an overlay network on top of conventional network routers.
- 23. The method as in claim 22 further comprising sending semantic packets through the network routers by tunneling.
- 24. The method as in claim 12 wherein the semantic profile expresses a content consumer's interest.
- 25. The method as in claim 12 wherein content is only forwarded to a content consumer if the content matches a content consumer's interest as specified in the semantic profile.
- 26. The method as in claim 25 wherein the matching of content to semantic profile is done by comparing structured XML packet headers and content routing trees.
- 27. The method as in claim 12 wherein the semantic profile comprises:
a preamble; at least one profile signature; at least one profile descriptor; information about a lifetime of the semantic profile; authentication data; and a command field that instructs a semantic router.
- 28. The method as in claim 27 wherein the preamble of the semantic profile includes at least one semantic descriptor.
- 29. The method as in claim 27 wherein the profile descriptor is in a networking community programming language.
- 30. The method as in claim 27 wherein the profile descriptor is in XML markup language.
- 31. The method as in claim 27 wherein the authentication data is used to verify a user.
- 32. The method as in claim 27 wherein the semantic profile further comprises information that allows the semantic network to act as a firewall by controlling who has access to content.
- 33. The method as in claim 27 further comprising a policy profile that allows the network to determine content received by a content consumer.
- 34. The method as in claim 12 wherein the step of aggregating the semantic profile comprises the steps of
parsing a profile file; creating and populating a node for a profile tree on every information element in the profile file; creating a fact associated with the node; reading in a rule file, wherein rules are written to compare name, value, parent, label and children of the node; running a rule engine which will fire the rules based on the facts; calling a corresponding method that transforms at least one node in the profile tree when the fact fires and attaching methods on subtrees for transformations.
- 35. The method of claim 34 where the facts and rules are represented in Jess system and the methods are represented in Java programming language.
- 36. A method for connecting a client to a semantic network comprising:
contacting a semantic log keeper; using routing data obtained from the semantic log keeper to query different semantic routers; and selecting suitable semantic routers based on responses to queries.
- 37. The method as in claim 36 further comprising the step of the selected semantic routers receiving a semantic profile from content consumers.
- 38. The method as in claim 36 further comprising the step of the selected routers receiving a semantic packet from content producers.
- 39. A method for announcing content comprising:
receiving a content profile; aggregating the content profile with other content profiles; distributing the aggregated content profiles into a semantic network; storing the aggregated content profiles at semantic routers within the semantic network; receiving seek packets; and routing the seek packets based in part on the aggregated content profiles stored at semantic routers.
- 40. The method as in claim 39 wherein said seek packets includes a return address.
- 41. The method as in claim 39 further comprising the step of pushing content to content consumers..
- 42. A semantic router comprising:
a profile manager that aggregates semantic profiles; and a forwarding agent that forwards semantic packets to neighboring semantic router based on the aggregated semantic profiles.
- 43. A multiprotocol router comprising:
a routing engine; a network routing engine; and a semantic packet routing engine.
- 44. An apparatus for routing content through a network having:
at least one semantic router, each semantic router connected to a network comprising:
means for receiving a semantic packet; means for receiving a semantic profile; means for aggregating the semantic profile with other semantic profiles; means for routing content based on the aggregated semantic profiles to at least a next destination.
- 45. An article of manufacture comprising a computer readable medium that stores computer executable instructions for causing a computer system to:
receive a semantic profile; aggregate the semantic profile with other semantic profiles; receive semantic packets; and use the aggregated semantic profiles to route the received semantic packets through a network to at least a next destination address.
- 46. A method for an online search engine in a distributed computer network comprising the steps of:
receiving an interest in specified content; creating a semantic profile comprising said interest in specified content; propagating the semantic profile to a semantic router; aggregating the semantic profile with other semantic profiles on at least one semantic router; propagating the aggregated semantic profiles through a network; receiving a semantic packet; and propagating the semantic packet through the network towards the search engine based on the aggregated semantic profiles.
- 47. A computer-implemented method of retrieving information comprising the following steps:
receivinga semantic profile; aggregating the semantic profile with other semantic profiles; receivinga semantic packets; and routing the semantic packet to a destination based on a comparison between the content contained in the semantic packet and the aggregated semantic profiles.
- 48. A scalable semantic network comprising:
a plurality of semantic routers distributed among the nodes of the semantic network, wherein each of the plurality of semantic routers having a plurality of ports, said ports having other semantic routers connected thereto, wherein a message is received by a current semantic router via one semantic router via one of said plurality of ports and sent along a preferred route to a next semantic routers via at least one of said plurality of ports; wherein each semantic router comprises ontological trees that determine the next semantic routers to which to route a message based on the content of the message; and wherein the ontological trees are based on an aggregation of semantic profiles.
Parent Case Info
[0001] The present invention claims priority to Provisional Application Serial No. 60/225,586 filed Aug. 16, 2000 as provided for under 35 U.S.C. § 119(e), which application is expressly incorporated herein by reference in its entirety.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60225586 |
Aug 2000 |
US |