Patents by Inventor Arvind Murching
Arvind Murching 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: 7389334Abstract: A method for providing an interface to a Bluetooth compliant device can emulate a modem such that computer software programs can communicate through the Bluetooth compliant device in the same manner in which they would communicate through a standard modem to access a dial-up, wide area network. The method also supports an interface to a Bluetooth compliant device which can emulate a network socket such that computer software programs can communicate through the Bluetooth compliant device seemingly in the same manner in which they would communicate through a standard network interface card to access a local area network. The method also allows for the interface to a Bluetooth compliant device to be dependent on the nature of the Bluetooth compliant device.Type: GrantFiled: January 6, 2006Date of Patent: June 17, 2008Assignee: Microsoft CorporationInventors: Louis J. Giliberto, Stanley W. Adermann, Doran J. Holan, Husni Roukbi, Mark Bertoglio, Joseph M. Joy, William Michael Zintel, Arvind Murching, Kenneth D. Ray
-
Patent number: 7317734Abstract: Applications can transparently use a bus, such as the IEEE-1394 serial bus, as if it were an Ethernet (IEEE 802.3). In a conventional Ethernet, each node is assigned a unique 6-byte MAC address in order to receive frames addressed to it over the LAN. According to the invention, IEEE-1394 bus node identifiers are mapped to Ethernet MAC addresses using for example a digital signature algorithm. Ethernet frames are then “wrapped” into 1394 bus packets and addressed to the destination node using the hashed address. The receiver unwraps the 1394 packet and restores the Ethernet frame to its original form. An optimum packet size for transmission of Ethernet packets over the 1394 bus is selected with reference to speed topology maps in the 1394 bus nodes, and this optimum size is transmitted to bus nodes. This packet size is reported to TCP to specify the packet size, and all packets larger than that size are fragmented and reassembled at the receiving node.Type: GrantFiled: January 14, 2005Date of Patent: January 8, 2008Assignee: Microsoft CorporationInventors: Joseph M. Joy, Arvind Murching, Lawrence R. Cleeton
-
Patent number: 7219121Abstract: A new method and framework for scheduling receive-side processing of data streams received from a remote requesting client by a multiprocessor system computer is disclosed. The method receives data packets from the remote requesting client via a network and, for each data packet, applies a mapping algorithm to portions of the received data packet yielding a mapping value. The method further applies the map value to a processor selection policy to identify a processor in the multiprocessor system as a selected processor to perform receive-side processing of the data packet. The method queues the received data packet for processing by the selected processor and invokes a procedure call to initiate processing of the data packet.Type: GrantFiled: March 29, 2002Date of Patent: May 15, 2007Assignee: Microsoft CorporationInventors: Sanjay N. Kaniyar, Alireza Dabagh, N K Srinivas, Bhupinder S. Sethi, Arvind Murching
-
Patent number: 7209971Abstract: Filtering data packets in a manner that promotes efficient flow of data through a communication path. A filter stack includes one or more filter instances that may filter data packets that pass through the filter stack. The filter stack is associated with one or more protocol stacks that function in communication paths between a computing device and a network. When filtering instances are inserted to or removed from a filter stack, associated protocol stacks may remain capable of transferring data. An abstract interface facilitates inserting and removing filter instances by passing data to filter drivers that create filter instances. A filter driver may create multiple filter instances. Filtering operations associated with filter instances may be bypassed based on the direction of data flow, control flow, and characteristics of packets.Type: GrantFiled: December 11, 2001Date of Patent: April 24, 2007Assignee: Microsoft CorporationInventors: Alireza Dabagh, Aditya Dube, Arvind Murching, Fengfen Liu
-
Publication number: 20070011733Abstract: A unified architecture for enabling remote access to a network is provided. The network may comprise, as examples, a virtual private network (VPN) and/or a peer-to-peer network. In one embodiment, the architecture includes components installed on a client device/node and a gateway/supernode. Components implemented on the client device may facilitate access in a manner similar to that of a traditional VPN, while components on the gateway may facilitate access in a manner similar to an application proxy. Communication between the client device and gateway may occur, as an example, via a Secure Sockets Layer (SSL) communication protocol.Type: ApplicationFiled: July 8, 2005Publication date: January 11, 2007Applicant: Microsoft CorporationInventors: Abolade Gbadegesin, Arvind Murching, David Thaler, Henry Sanders, Narendra Gidwani, Paul Mayfield
-
Publication number: 20060224664Abstract: A method for providing an interface to a Bluetooth compliant device can emulate a modem such that computer software programs can communicate through the Bluetooth compliant device in the same manner in which they would communicate through a standard modem to access a dial-up, wide area network. The method also supports an interface to a Bluetooth compliant device which can emulate a network socket such that computer software programs can communicate through the Bluetooth compliant device seemingly in the same manner in which they would communicate through a standard network interface card to access a local area network. The method also allows for the interface to a Bluetooth compliant device to be dependent on the nature of the Bluetooth compliant device.Type: ApplicationFiled: January 6, 2006Publication date: October 5, 2006Applicant: Microsoft CorporationInventors: Louis Giliberto, Stanley Adermann, Doron Holan, Husni Roukbi, Mark Bertoglio, Joseph Joy, William Zintel, Arvind Murching, Kenneth Ray
-
Publication number: 20060190654Abstract: The invention provides quality-of-service (QoS) delivery services over a computer bus having isochronous data transfer capabilities. A transmitting node on the bus transmits a message to an intended recipient indicating a requested bandwidth for a connection. If the intended recipient has sufficient resources, it allocates an isochronous data channel on the bus and notifies the transmitter of the allocated channel. Thereafter, the transmitter transmits the data on the allocated channel. If the recipient cannot allocate a channel, it does not respond, and the transmitter thereafter detects a time-out condition and begins transmitting using a “best efforts” scheme (i.e., non-guaranteed time delivery). In a second variation, a receiving node detects that it is receiving large quantities of data from a transmitting node. In response, the receiving node allocates an isochronous data channel on the bus and notifies the transmitter of the allocated channel.Type: ApplicationFiled: May 24, 2004Publication date: August 24, 2006Applicant: Microsoft CorporationInventors: Joseph Joy, Georgios Chrysanthakopoulos, Rajesh Sundaram, Arvind Murching
-
Patent number: 7093044Abstract: The invention provides quality-of-service (QoS) delivery services over a computer bus having isochronous data transfer capabilities. A transmitting node on the bus transmits a message to an intended recipient indicating a requested bandwidth for a connection. If the intended recipient has sufficient resources, it allocates an isochronous data channel on the bus and notifies the transmitter of the allocated channel. Thereafter, the transmitter transmits the data on the allocated channel. If the recipient cannot allocate a channel, it does not respond, and the transmitter thereafter detects a time-out condition and begins transmitting using a “best efforts” scheme (i.e., non-guaranteed time delivery). In a second variation, a receiving node detects that it is receiving large quantities of data from a transmitting node. In response, the receiving node allocates an isochronous data channel on the bus and notifies the transmitter of the allocated channel.Type: GrantFiled: October 25, 2004Date of Patent: August 15, 2006Assignee: Microsoft CorporationInventors: Joseph M Joy, Georgios Chrysanthakopoulos, Rajesh Sundaram, Arvind Murching
-
Publication number: 20060133275Abstract: Filtering data packets in a manner that promotes efficient flow of data through a communication path. A filter stack includes one or more filter instances that may filter data packets that pass through the filter stack. The filter stack is associated with one or more protocol stacks that function in communication paths between a computing device and a network. When filtering instances are inserted to or removed from a filter stack, associated protocol stacks may remain capable of transferring data. An abstract interface facilitates inserting and removing filter instances by passing data to filter drivers that create filter instances. A filter driver may create multiple filter instances. Filtering operations associated with filter instances may be bypassed based on the direction of data flow, control flow, and characteristics of packets.Type: ApplicationFiled: January 23, 2006Publication date: June 22, 2006Applicant: Microsoft CorporationInventors: Alireza Dabagh, Aditya Dube, Arvind Murching, Fengfen Liu
-
Patent number: 6977939Abstract: The invention allows applications to transparently use a bus, such as the IEEE-1394 serial bus, as if it were an Ethernet (IEEE 802.3). In a conventional Ethernet, each node is assigned a unique 6-byte MAC address in order to receive frames addressed to it over the LAN. According to the invention, IEEE-1394 bus node identifiers are mapped to Ethernet MAC addresses using for example a digital signature algorithm. Ethernet frames are then “wrapped” into 1394 bus packets and addressed to the destination node using the hashed address. The receiver unwraps the 1394 packet and restores the Ethernet frame to its original form. An optimum packet size for transmission of Ethernet packets over the 1394 bus is selected with reference to speed topology maps in the 1394 bus nodes, and this optimum size is transmitted to bus nodes. This packet size is reported to TCP to specify the packet size, and all packets larger than that size are fragmented and reassembled at the receiving node.Type: GrantFiled: January 26, 2001Date of Patent: December 20, 2005Assignee: Microsoft CorporationInventors: Joseph M. Joy, Arvind Murching, Lawrence R. Cleeton
-
Patent number: 6931645Abstract: Methods are provided that allow high-level protocol drivers to cancel transmission requests that have been sent to low-level protocol drivers. Transmission requests are assigned cancel identifiers. Because one original request may be divided into several packets for transmission, the same cancel identifier is given to every packet that derives from the original request. High-level protocol drivers can request cancellation of all pending requests whose cancel identifiers match the one indicated. Cancel identifiers generated by different high-level protocol drivers are mutually distinct so one protocol driver cannot inadvertently cancel requests made by another. The protocol driver may divide its requests into logical flows and assign the same cancel identifier to all requests within one flow. Then, the protocol driver may cancel all pending requests within one flow while allowing requests in other flows to proceed to transmission.Type: GrantFiled: December 15, 2000Date of Patent: August 16, 2005Assignee: Microsoft CorporationInventors: Arvind Murching, Nk Srinivas, Jameel Hyder, Vadim Eydelman, Abolade Gbadegesin
-
Publication number: 20050157732Abstract: Applications can transparently use a bus, such as the IEEE-1394 serial bus, as if it were an Ethernet (IEEE 802.3). In a conventional Ethernet, each node is assigned a unique 6-byte MAC address in order to receive frames addressed to it over the LAN. According to the invention, IEEE-1394 bus node identifiers are mapped to Ethernet MAC addresses using for example a digital signature algorithm. Ethernet frames are then “wrapped” into 1394 bus packets and addressed to the destination node using the hashed address. The receiver unwraps the 1394 packet and restores the Ethernet frame to its original form. An optimum packet size for transmission of Ethernet packets over the 1394 bus is selected with reference to speed topology maps in the 1394 bus nodes, and this optimum size is transmitted to bus nodes. This packet size is reported to TCP to specify the packet size, and all packets larger than that size are fragmented and reassembled at the receiving node.Type: ApplicationFiled: January 14, 2005Publication date: July 21, 2005Applicant: Microsoft CorporationInventors: Joseph Joy, Arvind Murching, Lawrence Cleeton
-
Publication number: 20050080947Abstract: The invention provides quality-of-service (QoS) delivery services over a computer bus having isochronous data transfer capabilities. A transmitting node on the bus transmits a message to an intended recipient indicating a requested bandwidth for a connection. If the intended recipient has sufficient resources, it allocates an isochronous data channel on the bus and notifies the transmitter of the allocated channel. Thereafter, the transmitter transmits the data on the allocated channel. If the recipient cannot allocate a channel, it does not respond, and the transmitter thereafter detects a time-out condition and begins transmitting using a “best efforts” scheme (i.e., non-guaranteed time delivery). In a second variation, a receiving node detects that it is receiving large quantities of data from a transmitting node. In response, the receiving node allocates an isochronous data channel on the bus and notifies the transmitter of the allocated channel.Type: ApplicationFiled: October 25, 2004Publication date: April 14, 2005Applicant: Microsoft corporationInventors: Joseph Joy, Georgios Chrysanthakopoulos, Rajesh Sundaram, Arvind Murching
-
Patent number: 6820150Abstract: The invention provides quality-of-service (QoS) delivery services over a computer bus having isochronous data transfer capabilities. A transmitting node on the bus transmits a message to an intended recipient indicating a requested bandwidth for a connection. If the intended recipient has sufficient resources, it allocates an isochronous data channel on the bus and notifies the transmitter of the allocated channel. Thereafter, the transmitter transmits the data on the allocated channel. If the recipient cannot allocate a channel, it does not respond, and the transmitter thereafter detects a time-out condition and begins transmitting using a “best efforts” scheme (i.e., non-guaranteed time delivery). In a second variation, a receiving node detects that it is receiving large quantities of data from a transmitting node. In response, the receiving node allocates an isochronous data channel on the bus and notifies the transmitter of the allocated channel.Type: GrantFiled: April 11, 2001Date of Patent: November 16, 2004Assignee: Microsoft CorporationInventors: Joseph M. Joy, Georgios Chrysanthakopoulos, Rajesh Sundaram, Arvind Murching
-
Patent number: 6725311Abstract: A method and apparatus provides a method and apparatus for treating a serial bus, such as an IEEE 1394 bus, as a connection-oriented network. In one embodiment, an application programming interface (API) permits different protocols (e.g., TCP/IP, IPX, and others) to connect to the 1394 bus and to make use of various 1394 features, such as isochronous packet transmission, without knowledge of hardware-specific idiosyncrasies. A call is made to set up a connection (a “virtual circuit”) over the serial bus, and, thereafter, a connection “handle” is used to communicate over the bus using the connection. Different types of connections can be provided, including a node-specific connection; a channel-specific connection; and a receiving connection (e.g., for incoming data). In one embodiment, a programming interface hides details of the connection set-up, and includes packet fragmentation and reassembly functions.Type: GrantFiled: September 14, 2000Date of Patent: April 20, 2004Assignee: Microsoft CorporationInventors: Joseph M Joy, Arvind Murching, Aditya Dube, Alireza Dabagh
-
Publication number: 20030187914Abstract: A new method and framework for scheduling receive-side processing of data streams received from a remote requesting client by a multiprocessor system computer is disclosed. The method receives data packets from the remote requesting client via a network and, for each data packet, applies a mapping algorithm to portions of the received data packet yielding a mapping value. The method further applies the map value to a processor selection policy to identify a processor in the multiprocessor system as a selected processor to perform receive-side processing of the data packet. The method queues the received data packet for processing by the selected processor and invokes a procedure call to initiate processing of the data packet.Type: ApplicationFiled: March 29, 2002Publication date: October 2, 2003Applicant: Microsoft CorporationInventors: Sanjay N. Kaniyar, Alireza Dabagh, Nk Srinivas, Bhupinder S. Sethi, Arvind Murching
-
Publication number: 20020136225Abstract: The invention allows applications to transparently use a bus, such as the IEEE-1394 serial bus, as if it were an Ethernet (IEEE 802.3). In a conventional Ethernet, each node is assigned a unique 6-byte MAC address in order to receive frames addressed to it over the LAN. According to the invention, IEEE-1394 bus node identifiers are mapped to Ethernet MAC addresses using for example a digital signature algorithm. Ethernet frames are then “wrapped” into 1394 bus packets and addressed to the destination node using the hashed address. The receiver unwraps the 1394 packet and restores the Ethernet frame to its original form. An optimum packet size for transmission of Ethernet packets over the 1394 bus is selected with reference to speed topology maps in the 1394 bus nodes, and this optimum size is transmitted to bus nodes. This packet size is reported to TCP to specify the packet size, and all packets larger than that size are fragmented and reassembled at the receiving node.Type: ApplicationFiled: January 26, 2001Publication date: September 26, 2002Inventors: Joseph M. Joy, Arvind Murching, Lawrence R. Cleeton
-
Publication number: 20020078250Abstract: Methods are provided that allow high-level protocol drivers to cancel transmission requests that have been sent to low-level protocol drivers. Transmission requests are assigned cancel identifiers. Because one original request may be divided into several packets for transmission, the same cancel identifier is given to every packet that derives from the original request. High-level protocol drivers can request cancellation of all pending requests whose cancel identifiers match the one indicated. Cancel identifiers generated by different high-level protocol drivers are mutually distinct so one protocol driver cannot inadvertently cancel requests made by another. The protocol driver may divide its requests into logical flows and assign the same cancel identifier to all requests within one flow. Then, the protocol driver may cancel all pending requests within one flow while allowing requests in other flows to proceed to transmission.Type: ApplicationFiled: December 15, 2000Publication date: June 20, 2002Inventors: Arvind Murching, Nk Srinivas, Jameel Hyder, Vadim Eydelman, Abolade Gbadegesin