Patents by Inventor Mohamed M. Abdelaziz

Mohamed M. Abdelaziz has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 7574523
    Abstract: A system and method for allowing peers to exchange messages with other peers independently of their network location in a peer-to-peer environment. Messages may be transparently routed, potentially traversing partitions (e.g. firewalls and NATs), and using different protocols to reach the destination peers. In one embodiment, any peer node may serve as a relay peer that allows peers inside a partition to have a presence outside the partition and provides a mechanism for peers outside partitions to discover and communicate with peers inside the partitions. In one embodiment, a relay peer may maintain information on routes to other peers and assist in relaying messages to other peers. In one embodiment, any peer may query a relay peer for route information. In one embodiment, messages may include routing information as part of their payloads.
    Type: Grant
    Filed: January 22, 2002
    Date of Patent: August 11, 2009
    Assignee: Sun Microsystems, Inc.
    Inventors: Bernard A. Traversat, Mohamed M. Abdelaziz, Michael J. Duigou, Eric Pouyoul, Jean-Christophe Hugly, Li Gong, William J. Yeager, William N. Joy, Michael J. Clary
  • Patent number: 7533172
    Abstract: A system and method for providing advertisements in a peer-to-peer networking environment is described. In one embodiment, the peer-to-peer protocols may use advertisements to describe and publish the existence of peer resources. An advertisement may be defined as a structured, language neutral metadata structure that names, describes, and publishes the existence of a peer-to-peer platform resource, such as a peer, a peer group, a pipe, or a service. In one embodiment, user-defined advertisement subtypes (for example, using XML schemas) may be formed from these basic types. A peer in a peer-to-peer network may publish a resource advertisement to make the resource corresponding to the advertisement available to other peers on the network. Peers may discover published advertisements by broadcasting discovery query messages. Other peers may respond to discovery query messages by sending response messages that may include advertisements.
    Type: Grant
    Filed: January 22, 2002
    Date of Patent: May 12, 2009
    Assignee: Sun Microsystems, Inc.
    Inventors: Bernard A. Traversat, Li Gong, Kuldipsingh Pabla, William J. Yeager, Mohamed M. Abdelaziz, Michael J. Duigou, Eric Pouyoul, Jean-Christophe Hugly, William N. Joy, Michael J. Clary
  • Patent number: 7533161
    Abstract: System and method for multiplatform implementation of abstract software modules in peer-to-peer networking environments. A module class may have one or more module specifications. Each module specification may have one or more module implementations configured to execute within a particular execution environment. A unique module class identifier may be assigned to the module class. A unique module specification identifier may be assigned to each module specification of the module class. In one embodiment, a module specification advertisement may be generated for each module specification. A module implementation advertisement may be generated for each module implementation. In one embodiment, the module specification identifier of the corresponding module specification is included in each module implementation advertisement.
    Type: Grant
    Filed: February 20, 2003
    Date of Patent: May 12, 2009
    Assignee: Sun Microsystems, Inc.
    Inventors: Jean-Christophe Hugly, Mohamed M. Abdelaziz, Eric Pouyoul, Bernard A. Traversat, Michael J. Duigou
  • Patent number: 7486695
    Abstract: Method and apparatus for multiplexed data communication tunneling channels. Embodiments of the tunneling mechanism may provide tunnel sockets between networking environments that allow a node in one networking environment to interconnect with network resources in other networking environments. A tunnel socket is a proxy or bridge across a peer-to-peer network between different networking environments. Using the tunneling mechanism, descriptions of network resources in one format may be translated to advertisements in a uniform description format, which may then be published on the network. The published advertisements may be discovered by entities in other networking environments and translated into formats of the other networking environments for access by the entities. To the entities, the resources appear to be in their local networking environment.
    Type: Grant
    Filed: September 28, 2004
    Date of Patent: February 3, 2009
    Assignee: Sun Microsystems, Inc.
    Inventors: Mohamed M. AbdelAziz, Juan Carlos Soto
  • Patent number: 7487509
    Abstract: System and method for providing multiple embodiments of abstract software modules in peer-to-peer network environments. A module class may have one or more module specifications. Each module specification may have one or more module implementations configured to execute within a particular execution environment. A unique module class identifier may be assigned to the module class. A role extension to the module class identifier may be generated for each instance of the module class that performs a different role in a context. A module specification advertisement may be generated for each module specification. A unique module specification identifier may be assigned to each module specification of the module class. A module implementation advertisement may be generated for each module implementation. In one embodiment, the module specification identifier of the corresponding module specification is included in each module implementation advertisement.
    Type: Grant
    Filed: February 20, 2003
    Date of Patent: February 3, 2009
    Assignee: Sun Microsystems, Inc.
    Inventors: Jean-Christophe Hugly, Mohamed M. Abdelaziz, Eric Pouyoul, Bernard A. Traversat, Michael J. Duigou
  • Patent number: 7484225
    Abstract: System and method for describing and identifying abstract software modules in peer-to-peer networking environments. A module class may have one or more module specifications. Each module specification may have one or more module implementations. A module class advertisement may be generated for the module class. A unique module class identifier may be assigned to the module class. A role extension to the module class identifier may be generated for each instance of the module class that performs a different role in a context. A unique module specification identifier may be assigned to each module specification of the module class. In one embodiment, a module specification advertisement may be generated for each module specification. In one embodiment, there may be one or more module implementations for each module specification. In one embodiment, a module implementation advertisement may be generated for each module implementation.
    Type: Grant
    Filed: February 20, 2003
    Date of Patent: January 27, 2009
    Assignee: Sun Microsystems, Inc.
    Inventors: Jean-Christophe Hugly, Mohamed M. Abdelaziz, Eric Pouyoul, Bernard A. Traversat, Michael J. Duigou
  • Patent number: 7464168
    Abstract: System and method for decentralized entity presence are described. Presence services may collaborate to form a presence service view on the network. A node providing an entity on the network may provide an entity advertisement to a presence service to advertise the entity's presence on the network. The presence information may be indexed locally by a presence service, and the indexes may be shared with one or more other presence services within the presence service view. A presence service may accept queries from nodes for a specific entity, and walk the query within the presence service view to locate the target entity. The query may then be forwarded to the node advertising the presence entity. The node providing the entity may respond directly to the querying node without going through the presence service. A presence contract may then be negotiated between the nodes without going through the presence service.
    Type: Grant
    Filed: October 19, 2004
    Date of Patent: December 9, 2008
    Assignee: Sun Microsystems, Inc.
    Inventors: Mohamed M. Abdelaziz, Bernard A. Traversat, Juan Carlos Soto
  • Patent number: 7461130
    Abstract: Method and apparatus for the self-organization of nodes into groups in network computing environments. Embodiments may provide the ability to deploy nodes on a network, and to allow the nodes to organize into groups without human intervention. In one embodiment, a node may broadcast a query looking for a master node for the group. If the query produces no responses, the node may self-elect as the master node for the group and the node may broadcast its presence as the master node. If two or more nodes self-elect as master nodes, the nodes may negotiate to determine which node will be the master node. If the master node becomes unavailable, the remaining nodes in the group may elect a new master node. Some embodiments may be implemented on a peer-to-peer platform, such as the JXTA peer-to-peer platform, which may allow the scope of the group to span subnetworks and networks.
    Type: Grant
    Filed: November 24, 2004
    Date of Patent: December 2, 2008
    Assignee: Sun Microsystems, Inc.
    Inventors: Mohamed M. AbdelAziz, Bernard A. Traversat, Andre Marques da Fonseca, Sriranga R. Veeraraghavan
  • Patent number: 7458082
    Abstract: Various embodiments of mechanisms for bridging data representation language messaging based distributed computing environments to foreign environments are described. A device proxy may implement a device protocol and a distributed computing environment protocol to bridge devices into the distributed computing environment. A client proxy is described that implements the distributed computing environment protocol on behalf of a foreign client such as a browser. A service proxy is described that implements the distributed computing environment protocol on behalf of a foreign service. A transport proxy is described that routes data representation language messages between two different message transports. A distributed computing environment client proxy may allow distributed computing environment clients to access Remote Method Invocation (RMI)-based environment services. An RMI-based environment client proxy may allow RMI-based environment clients to access distributed computing environment services.
    Type: Grant
    Filed: October 19, 2000
    Date of Patent: November 25, 2008
    Assignee: Sun Microsystems, Inc.
    Inventors: Gregory L. Slaughter, Thomas E. Saulpaugh, Bernard A. Traversat, Mohamed M. Abdelaziz, Michael J. Duigou
  • Patent number: 7426721
    Abstract: A virtual machine (e.g. the Java Virtual Machine (JVM)) may include extensions for compiling objects (e.g. Java Objects) into data representation language (e.g. XML) representations of the objects, and for decompiling representations of objects into objects. The virtual machine may supply an API to the compilation/decompilation extensions. The compiler/decompiler API may accept an object as input, and output a data representation language representation of the object and all its referenced objects (the object graph) in a data stream. In addition, the compiler/decompiler API may accept a data stream, which includes a representation of the object and all its referenced objects (the object graph), and output the object (and all the objects in its object graph). In one embodiment, an intermediary format may be used to represent a data representation language document and may be dynamically processed to generate a class instance from the data representation language document.
    Type: Grant
    Filed: September 15, 2000
    Date of Patent: September 16, 2008
    Assignee: Sun Microsystems, Inc.
    Inventors: Thomas E. Saulpaugh, Gregory L. Slaughter, Bernard A. Traversat, Michael J. Duigou, Mohamed M. Abdelaziz
  • Patent number: 7412518
    Abstract: A service discovery protocol may allow clients to discover services on a proximity basis. A service device that provides one or more computing services may support a proximity communication link. A client device may form a proximity communication link with the service device. The client device may directly request from the service device a document that describes an interface to access a service provided by the service device. The service device may provide the document directly to the client device over proximity communication link. The document may include a service advertisement for the service, and the service advertisement may include a schema specifying an interface to at least a portion the service. The client device may use the information from the document to access the service. The client device may support a transport connection in addition to the proximity communication link, and the client device may make the document available to other devices over the transport connection.
    Type: Grant
    Filed: September 7, 2000
    Date of Patent: August 12, 2008
    Assignee: Sun Microsystems, Inc.
    Inventors: Michael J. Duigou, Mohamed M. Abdelaziz, Bernard A. Traversat, Thomas E. Saulpaugh, Gregory L. Slaughter
  • Patent number: 7401153
    Abstract: A system and method for providing an open network computing platform designed for peer-to-peer computing. The peer-to-peer platform may provide protocols for peer-to-peer services and applications that allow peers to discover each other, communicate with each other, and cooperate with each other to form peer groups. The protocols may include a peer membership protocol, a peer discovery protocol, a peer resolver protocol, a peer information protocol, a pipe binding protocol, and a peer endpoint protocol. Services and applications that participate in the protocols may be provided to deal with higher-level concepts. Advertisements may be used to publish peer resources. The peer-to-peer platform provides the ability to replicate information toward end users and may enable peers to find content that is closest to them. The peer-to-peer protocols and unique peer identifiers may allow peer nodes to move to different locations and access services and other content independent of network physical addresses.
    Type: Grant
    Filed: January 22, 2002
    Date of Patent: July 15, 2008
    Assignee: Sun Microsystems, Inc.
    Inventors: Bernard A. Traversat, Gregory L. Slaughter, Thomas E. Saulpaugh, Mohamed M. Abdelaziz, Michael J. Duigou, Eric Pouyoul, Jean-Christophe Hugly, Li Gong, William J. Yeager, Kuldipsingh Pabla, William N. Joy, Michael J. Clary
  • Patent number: 7401152
    Abstract: A system and method for uniquely identifying peers and other resources in a peer-to-peer networking environment. In one embodiment, every peer in the peer-to-peer network may have a unique peer identifier. Other peer-to-peer network resources may also have unique identifiers, including peer groups, services, applications, pipes, endpoints, content and resource advertisements. Identifiers may serve to canonically refer to resources. Identifiers may be embedded in advertisements for resources. In one embodiment, a peer identifier may identify a peer group in which the peer is a member peer. In one embodiment, a peer may have a different peer identifier for each group in which it is a member peer. In one embodiment, an identifier may be bound to a network address of the resource. If the resource changes network addresses, the identifier may be bound to the new network address. Thus, identifiers provide dynamic addressing for resources in the peer-to-peer environment.
    Type: Grant
    Filed: January 22, 2002
    Date of Patent: July 15, 2008
    Assignee: Sun Microsystems, Inc.
    Inventors: Bernard A. Traversat, Mohamed M. Abdelaziz, Michael J. Duigou, Eric Pouyoul, Jean-Christophe Hugly, Li Gong, William N. Joy, Michael J. Clary
  • Patent number: 7398533
    Abstract: An interface between clients and services in a distributed computing environment is described. Method gates may provide an interface to remotely invoke functions of a service. A method gate may be generated from an advertisement that may include definitions for one or more messages for remotely invoking functions of the service. A client may generate messages containing representations of method calls. The service may invoke functions that correspond to the set of messages. A method gate on the service may unmarshal the message and invoke the function. The client may receive the results of the function directly. Alternatively, the results may be stored, an advertisement to the results may be provided, and a gate may be generated to access the results. Message gates may perform the sending and receiving of the messages between the client and service. In one embodiment, functions of the service may be computer programming language (e.g. Java) methods.
    Type: Grant
    Filed: September 27, 2000
    Date of Patent: July 8, 2008
    Assignee: Sun Microsystems, Inc.
    Inventors: Gregory L. Slaughter, Thomas E. Saulpaugh, Bernard A. Traversat, Mohamed M. Abdelaziz
  • Patent number: 7395333
    Abstract: A service discovery mechanism may allow clients in a distributed computing environment to search for services. The service discovery mechanism may allow a client to request a capability credential from a service. The distributed computing environment may include a mechanism for a client to negotiate service access rights and to then obtain a capability credential that may be used to obtain the service's access interface to the set or subset of the service's capabilities that were requested or negotiated by the client. In one embodiment, the client may present to the service a set of desired capabilities. The service may then respond with a capability credential that may convey to the client the rights to use the requested capabilities. A complete service advertisement may be needed to create a message endpoint for accessing the service. In an embodiment, the capability credential may be used by a client to obtain a complete advertisement for only the requested or negotiated capabilities.
    Type: Grant
    Filed: August 31, 2000
    Date of Patent: July 1, 2008
    Assignee: Sun Microsystems, Inc.
    Inventors: Thomas E. Saulpaugh, Gregory L. Slaughter, Mohamed M. Abdelaziz, Bernard A. Traversat
  • Patent number: 7340500
    Abstract: A system and method for providing peer groups in a peer-to-peer environment. A peer group may be one or more peers in a peer-to-peer environment that share a set of network services and content. A peer group may define an implicit scope for messages originating from members peers of the peer group. A peer group may provide redundant services and content for greater reliability. In one embodiment, interaction among peers and peer groups in the peer-to-peer environment may be implemented using protocols that are platform-independent as to programming language implementations and network transports. In one embodiment, peers may discover existing peer groups and join the existing peer groups. In one embodiment, peers may create new peer groups.
    Type: Grant
    Filed: January 22, 2002
    Date of Patent: March 4, 2008
    Assignee: Sun Microsystems, Inc.
    Inventors: Bernard A. Traversat, Li Gong, William J. Yeager, Mohamed M. Abdelaziz, Michael J. Duigou, Eric Pouyoul, Jean-Christophe Hugly, William N. Joy, Michael J. Clary
  • Patent number: 7263560
    Abstract: Embodiments of a shared resource distributed index mechanism that peers in a peer-to-peer network may utilize to distribute index entries corresponding to resources to indexes of shared resources among one or more other peers. These indexes may be used to direct queries to peers where the queries are most likely to be answered. When a query is received by a rendezvous peer including one or more indexes, contents of the query may be “looked up” in the index to find matches. The results of the lookup may include information on one or peer(s) that may hold advertisement(s) to the resource requested by the query. The query may then be forwarded to one or more peers that may hold the advertisement for the resource. Embodiments may provide “loosely-coupled” distribution of index entries for use in querying for resources in the peer-to-peer network.
    Type: Grant
    Filed: August 30, 2002
    Date of Patent: August 28, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Mohamed M. Abdelaziz, Bernard A. Traversat, Michael J. Duigou, Jean-Christophe Hugly, Sherif Botros
  • Patent number: 7206841
    Abstract: A system and method for providing rendezvous nodes in a peer-to-peer networking environment is described. Rendezvous nodes preferably cache information about network resources that may be useful to peer nodes on a peer-to-peer network. In one embodiment, a network of rendezvous nodes may help peer nodes to discover network resources over long-range on the peer-to-peer network. Network resource may include, but may not be limited to peer nodes, peer groups, services, content, and communication channels. In one embodiment, rendezvous nodes may respond to discovery query messages from peer nodes. The discovery query messages may specify desired network resource information. In one embodiment, rendezvous nodes may provide route discovery for network resources. In one embodiment, a peer node may be pre-configured with a pre-defined set of rendezvous nodes to access on startup. These bootstrapping rendezvous may help the peer node discover network resources that it needs to start up.
    Type: Grant
    Filed: January 22, 2002
    Date of Patent: April 17, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Bernard A. Traversat, Li Gong, Mohamed M. Abdelaziz, Michael J. Duigou, Eric Pouyoul, Jean-Christophe Hugly, William N. Joy, Michael J. Clary
  • Patent number: 7197565
    Abstract: Embodiments of a decentralized mechanism for detecting the presence of entities in a peer-to-peer network. In one embodiment, using pipes, a peer may uniquely and independently generate an identity for a peer-to-peer network entity. The identity may be used to probe the peer-to-peer network for presence of instances of the corresponding entity on other peers regardless of which peer the identity was generated on and without using a central identity repository or presence system. In one embodiment, net crawling may be used to map identities and resolve the locations of instances of the corresponding entities. An entity may move anywhere on the network, and the decentralized mechanism for detecting entity presence may be used to locate the instance(s) of the entity.
    Type: Grant
    Filed: October 3, 2002
    Date of Patent: March 27, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Mohamed M. Abdelaziz, Eric Pouyoul, Jean-Christophe Hugly, Bernard A. Traversat, Michael J. Duigou
  • Patent number: 7167920
    Abstract: A system and method for establishing communications channels between and among peers in a peer-to-peer networking environment. Pipes may be used as communication channels for sending and receiving messages and other data between services or applications over input and output endpoints. Pipes may be asynchronous, unidirectional, stateless and unreliable. Bidirectional pipes may also be supported. Pipes may have ends that may be moved around and bound to different peers at different times. Point-to-point and propagate pipes may be supported. Pipes may connect peers that have a direct physical link and peers that do not have a direct link. Peers may communicate through pipes without knowing on which peer a pipe endpoint is bound. A message is sent to all peer endpoints currently connected (listening) to the pipe. The set of connected endpoints may be obtained from a pipe service using a pipe binding protocol.
    Type: Grant
    Filed: January 22, 2002
    Date of Patent: January 23, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Bernard A. Traversat, Mohamed M. Abdelaziz, Michael J. Duigou, Eric Pouyoul, Jean-Christophe Hugly, Li Gong, William J. Yeager, William N. Joy, Michael J. Clary