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: 7165107
    Abstract: System and method for the dynamic and transparent migration of services in a peer-to-peer networking environment. Member peers in a peer group using a peer-to-peer platform may cooperate to provide redundant instances of services to member peers. Dynamic migration of a service may be performed by unbinding one or more peer-to-peer platform pipes from a peer hosting an instance of the service and binding the pipes to another peer hosting a different instance of the service. Using pipes, services may transparently failover from one physical peer endpoint to another in order to mask a service or peer failure, or to access a newly published instance of a service. Thus, a collection of peers may provide a high level of fault tolerance, where, for example, a new peer at a different location may replace a crashed peer, with the new peer taking over the existing pipe to keep the communication going.
    Type: Grant
    Filed: June 5, 2002
    Date of Patent: January 16, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Eric Pouyoul, Mohamed M. Abdelaziz, Jean-Christophe Hugly, Michael J. Duigou, Bernard A. Traversat
  • Patent number: 7136927
    Abstract: A system and method for sending, resolving, and receiving queries for information on the status of network resources. A peer computing system may include one or more resolver nodes on a network for resolving queries for a resource to particular resource instances. The resolver nodes may receive query messages from peer nodes on the network. Each query message may request information about a resource implemented by one or more peer nodes on the network. The query messages may be formatted in accordance with a peer resolver protocol. The resolver node may determine a particular instance of the resource hosted on a particular peer node to receive the query. The resolver node may use a variety of criteria to determine a particular resource instance. The resolver node may forward the query message to the determined resource instance.
    Type: Grant
    Filed: January 22, 2002
    Date of Patent: November 14, 2006
    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: 7065579
    Abstract: A system and method for providing resources to networked devices for participating in a peer-to-peer environment. In one embodiment, a peer computing system on a network may include one or more bootstrap nodes that may provide, to devices coupled to the network, mechanisms for accessing resources for participating in the peer-to-peer environment. The bootstrap nodes may be peer nodes. The resources may give the devices access to services each of which may implement peer-to-peer platform protocols. The devices may be pre-configured to access one or more predefined peer nodes for information on bootstrap nodes. Alternatively, devices may use a bootstrapping mechanism to locate bootstrap nodes on the network.
    Type: Grant
    Filed: January 22, 2002
    Date of Patent: June 20, 2006
    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: 7016966
    Abstract: Embodiments of a mechanism for providing results gates to clients in the distributed computing environment to be used by the clients to access results generated by services on behalf of the clients. A client generates a request message for a service. The request message is generated by a client method gate. The service then generates results in response to the message. A results gate is generated for accessing the results. A gate on the client generates the results gate. The results are then accessed through the results gate. The results are structured as an object (e.g. Java object), and the results gate an object proxy for the results object. The results gate is returned to the process as results of the method call made by the process. In one embodiment, the results gate is a method gate and provides a method interface to the results.
    Type: Grant
    Filed: October 19, 2000
    Date of Patent: March 21, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Thomas E. Saulpaugh, Gregory L. Slaughter, Bernard A. Traversat, Mohamed M. Abdelaziz
  • Patent number: 6973493
    Abstract: A system and method for providing security for newly spawned spaces in a distributed computing environment. A client may access a first space service. The creation of a second space may be requested, such as by the client sending an appropriate request to an interface of the first space. In one embodiment, the first space and second space may share a common storage model, storage facility, and/or XML schema. The second space may initially be configured to permit access only to the requesting client. In one embodiment, a root authentication token is created for the second space. An authentication service associated with the second space may be initialized, whereby the second space is configured to permit access only to a client holding the root authentication token. The root authentication token may be sent to the requesting client or service. The requesting client may send the root authentication token to a second client.
    Type: Grant
    Filed: August 31, 2000
    Date of Patent: December 6, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Gregory L. Slaughter, Thomas E. Saulpaugh, Bernard A. Traversat, Mohamed M. Abdelaziz
  • Patent number: 6970869
    Abstract: A service discovery protocol may allow clients in a distributed computing environment to search for services. Service providers (or a listener agent) may respond to search requests by publishing or providing corresponding service advertisements or URIs to corresponding service advertisements. When a service provider responds to a discovery search request (either directly or through a listener agent), the provider may choose to publish a protected or an un-protected (complete) advertisement. A protected advertisement may include the set of information necessary to obtain a complete advertisement. Publishing a protected advertisement may force the client to obtain a valid credential from an authentication service before receiving the complete un-protected advertisement from the service provider. A complete un-protected advertisement is needed to create a message endpoint for accessing the service.
    Type: Grant
    Filed: August 31, 2000
    Date of Patent: November 29, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Gregory L. Slaughter, Thomas E. Saulpaugh, Mohamed M. Abdelaziz, Bernard A. Traversat
  • Patent number: 6957237
    Abstract: A database store method and system for a virtual persistent heap may include an Application Programming Interface (API) that provides a mechanism to cache portions of the virtual heap into an in-memory heap for use by an application. The virtual heap may be stored in a persistent store that may include one or more virtual persistent heaps, with one virtual persistent heap for each application running in the virtual machine. Each virtual persistent heap may be subdivided into cache lines. The store API may provide atomicity on the store transaction to substantially guarantee the consistency of the information stored in the database. The database store API provides several calls to manage the virtual persistent heap in the store. The calls may include, but are not limited to: opening the store, closing the store, atomic read transaction, atomic write transaction, and atomic delete transaction.
    Type: Grant
    Filed: June 2, 2000
    Date of Patent: October 18, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Bernard A. Traversat, Mohamed M. Abdelaziz, Thomas E. Saulpaugh, Gregory L. Slaughter
  • Patent number: 6918084
    Abstract: A system and method for spawning new spaces in a distributed computing environment. A client may access a first space service at a first Internet address. The first space service may store one or more service advertisements and/or other content in a first space, and each of the service advertisements may include information which is usable to access and execute a corresponding service. The first space service may include a first XML schema which specifies one or more messages usable to invoke functions of the first space service. The creation of a second space may be requested such as by the client sending an appropriate request to an interface of the first space. The second space may be created to store the results of running a service. In response, a second space service with a second space may be created at a second Internet address. The second space service may include a second schema which includes at least the first schema, and the second schema may include additional functionality as well.
    Type: Grant
    Filed: August 31, 2000
    Date of Patent: July 12, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Gregory L. Slaughter, Thomas E. Saulpaugh, Bernard A. Traversat, Mohamed M. Abdelaziz
  • Patent number: 6868447
    Abstract: Systems and methods for returning results of services within a distributed computing environment are provided. After a client invokes one or more functions of a service, results of the function(s) may be returned to the client in a plurality of ways: for example, in a message, in a space (e.g., a network-addressable storage location), in a space wherein the client is notified via an event, using an advertisement returned in a message, using an advertisement returned in a space, and using an advertisement returned in a space wherein the client is notified via an event. The advertisement may include the information necessary to access and read the results in a storage location such as a space. A schema for the service may specify a plurality of messages which are usable to invoke the function(s) of the service. The messages, results, and advertisements may be expressed in a platform-independent and/or programming-language-independent data representation language such as XML.
    Type: Grant
    Filed: September 12, 2000
    Date of Patent: March 15, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Gregory L. Slaughter, Thomas E. Saulpaugh, Bernard A. Traversat, Mohamed M. Abdelaziz
  • Patent number: 6850979
    Abstract: Embodiments of message gates are described. A message gate is the message endpoint for a client or service in a distributed computing environment. A message gate may provide a secure endpoint that sends and receives type-safe messages. Gates may perform the sending and receiving of messages between clients and services using a protocol specified in a service advertisement. In one embodiment, the messages are eXtensible Markup Language (XML) messages. For a client, a message gate represents the authority to use some or all of a service's capabilities. Each capability may be expressed in terms of a message that may be sent to the service. Creation of a message gate may involve an authentication service that generates an authentication credential, and that may negotiate the desired level of security and the set of messages that may be passed between client and service. A message gate may perform verification of messages against a message schema to ensure that the messages are allowed.
    Type: Grant
    Filed: August 31, 2000
    Date of Patent: February 1, 2005
    Assignee: Sun Microsystems, Inc.
    Inventors: Thomas E. Saulpaugh, Gregory L. Slaughter, Bernard A. Traversat, Mohamed M. Abdelaziz
  • Patent number: 6789077
    Abstract: A system and method for searching for Internet-based repositories within a distributed computing environment are provided. A client on a device may interact with a search service on the same or a different device to find spaces (i.e., network-accessible XML object repositories) for storage and/or retrieval of data. The client may send an XML search request to the search service. The search request may include one or more desired characteristics, such as keywords, which are sought of a space. Based upon the search request, the search service may generate search results including locations (e.g., URIs) of one or more resulting spaces. The spaces may include web pages. In generating the search results, the search service may interact with a network-accessible third-party search engine, such as a browser-accessible search engine. The search service may obtain a service advertisement for each of the resulting spaces. Each service advertisement includes information which is usable to access the respective space.
    Type: Grant
    Filed: August 31, 2000
    Date of Patent: September 7, 2004
    Assignee: Sun Microsystems, Inc.
    Inventors: Gregory L. Slaughter, Thomas E. Saulpaugh, Bernard A. Traversat, Mohamed M. Abdelaziz
  • Publication number: 20040044727
    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: Application
    Filed: August 30, 2002
    Publication date: March 4, 2004
    Inventors: Mohamed M. Abdelaziz, Bernard A. Traversat, Michael J. Duigou, Jean-Christophe Hugly, Sherif Botros
  • Publication number: 20040031038
    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: Application
    Filed: February 20, 2003
    Publication date: February 12, 2004
    Inventors: Jean-Christophe Hugly, Mohamed M. Abdelaziz, Eric Pouyoul, Bernard A. Traversat, Michael J. Duigou
  • Publication number: 20040030743
    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: Application
    Filed: February 20, 2003
    Publication date: February 12, 2004
    Inventors: Jean-Christophe Hugly, Mohamed M. Abdelaziz, Eric Pouyoul, Bernard A. Traversat, Michael J. Duigou
  • Publication number: 20040030794
    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: Application
    Filed: February 20, 2003
    Publication date: February 12, 2004
    Inventors: Jean-Christophe Hugly, Mohamed M. Abdelaziz, Eric Pouyoul, Bernard A. Traversat, Michael J. Duigou
  • Patent number: 6643650
    Abstract: A system and method for searching for documents within spaces in a distributed computing environment are provided. A client sends a lookup message to a space which stores documents. The lookup message may specify desired characteristics, such as a name or partial XML schema, of the stored documents. The documents may include XML service advertisements and XML device advertisements as well as general-purpose XML documents. A set of zero or more documents which match the lookup message are discovered. In one embodiment, the lookup message may include a desired name. If the lookup message includes both a desired name and a desired schema, the set of discovered documents may include both discovered documents having a name that matches the desired name and discovered documents having a schema that matches the desired schema. If the lookup message includes neither a desired name nor a desired schema, the set of discovered documents may include substantially all the documents stored in the space.
    Type: Grant
    Filed: September 12, 2000
    Date of Patent: November 4, 2003
    Assignee: Sun Microsystems, Inc.
    Inventors: Gregory L. Slaughter, Thomas E. Saulpaugh, Bernard A. Traversat, Mohamed M. Abdelaziz, Michael J. Duigou
  • Publication number: 20030041141
    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: Application
    Filed: October 3, 2002
    Publication date: February 27, 2003
    Inventors: Mohamed M. Abdelaziz, Eric Pouyoul, Jean-Christophe Hugly, Bernard A. Traversat, Michael J. Duigou
  • Publication number: 20030002521
    Abstract: A system and method for providing resources to networked devices for participating in a peer-to-peer environment. In one embodiment, a peer computing system on a network may include one or more bootstrap nodes that may provide, to devices coupled to the network, mechanisms for accessing resources for participating in the peer-to-peer environment. The bootstrap nodes may be peer nodes. The resources may give the devices access to services each of which may implement peer-to-peer platform protocols. The devices may be pre-configured to access one or more predefined peer nodes for information on bootstrap nodes. Alternatively, devices may use a bootstrapping mechanism to locate bootstrap nodes on the network.
    Type: Application
    Filed: January 22, 2002
    Publication date: January 2, 2003
    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
  • Publication number: 20020188657
    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: Application
    Filed: January 22, 2002
    Publication date: December 12, 2002
    Inventors: Bernard A. Traversat, Mohamed M. Abdelaziz, Michael J. Duigou, Eric Pouyoul, Jean-Christophe Hugly, Li Gong, William N. Joy, Michael J. Clary
  • Publication number: 20020184310
    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: Application
    Filed: January 22, 2002
    Publication date: December 5, 2002
    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