Patents by Inventor Cahya A. Masputra

Cahya A. Masputra 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).

  • Publication number: 20130201825
    Abstract: A method for efficiently transmitting packets from a client device comprising: receiving a packet at a network transport layer of a client device; calculating a flow hash value for the packet, the flow hash value associating the packet with a particular network flow, the flow hash value usable to track the packet and other packets associated with the particular network flow; receiving feedback for the flow from a layer below the network transport layer of the client device, the flow being identified using the flow hash value, the feedback indicating queuing conditions associated with the flow; and adjusting built in backoff mechanisms normally provided by the network socket layer based on the current queuing conditions.
    Type: Application
    Filed: September 15, 2012
    Publication date: August 8, 2013
    Inventors: Cahya Masputra, Padmavathy Bhooma
  • Publication number: 20130201996
    Abstract: A method comprising: configuring a plurality of transmit queues, each of the transmit queues having different packet service classifications associated therewith, the packet service classifications specifying a relative priority for packets stored within each respective queue, at least one of the transmit queues having a packet service classification assigned to network control packets being assigned a highest priority relative to the other transmit queues; classifying packets according to the different packet service classifications, wherein a packet to be transmitted is stored in one of the transmit queues based on the packet service classifications, and wherein network control packets are stored in the queue associated with network control packets; and scheduling packets for transmission from each of the transmit queues, wherein packets are scheduled for transmission according to the packet service classifications and wherein network control packets are prioritized for transmission above all other packet s
    Type: Application
    Filed: September 15, 2012
    Publication date: August 8, 2013
    Inventors: Cahya Masputra, Padmavathy Bhooma
  • Publication number: 20130201843
    Abstract: A method for receiving network packets on a client device comprising: initially entering into a first mode of operation in which polling from a network layer to a driver layer is disabled, wherein in the first mode of operations data packets received by the driver layer are pushed up to the network layer; monitoring a load factor defining a current network load on the client device; and entering into a second mode of operation in which polling from the network layer to the driver layer is enabled, wherein when in the second mode of operation, the network layer polling the driver layer when it is ready to accept new packets from the driver layer.
    Type: Application
    Filed: September 15, 2012
    Publication date: August 8, 2013
    Inventors: Cahya Masputra, Padmavathy Bhooma, Joe Liu
  • Publication number: 20130204965
    Abstract: A method implemented on a client device having a networking layer and a network driver layer for transmitting network packets comprising: receiving a packet to be transmitted from the client device to a destination over a network socket; classifying the packet according to an implicit packet service classification provided by the networking layer or a user-specific packet service classification explicitly specified by an application, the implicit classification having a default traffic classification queue and default scheduler associated therewith and the user-specified classification having a user-specified traffic classification and user-specified scheduler associated therewith; and enqueuing and scheduling the packet for transmission according to either the default or the user-specific traffic classifications.
    Type: Application
    Filed: September 15, 2012
    Publication date: August 8, 2013
    Inventors: Cahya Masputra, Padmavathy Bhooma, Anumita Biswas
  • Publication number: 20130201995
    Abstract: A client device having a networking layer and a network driver layer for transmitting network packets comprising: a plurality of transmit queues configured at the network layer, each of the transmit queues having different packet service classifications associated therewith, packets being queued in one of the transmit queues according to traffic service classifications assigned to the packets; a classifier module for classifying packets according to the different packet service classifications, wherein a packet to be transmitted is stored in one of the transmit queues based on the packet service classifications; and a network layer packet scheduler for scheduling packets for transmission from each of the transmit queues at the networking layer, the network layer packet scheduler scheduling packets for transmission according to the packet service classifications.
    Type: Application
    Filed: September 15, 2012
    Publication date: August 8, 2013
    Inventors: Cahya Masputra, Padmavathy Bhooma, Joe Liu
  • Publication number: 20130201927
    Abstract: A computer-implemented method for managing packet scheduling on a client device. For example, one embodiment of a method comprises: receiving a packet to be transmitted; enqueuing the packet in a queue at a network stack level; determining whether packet scheduling is currently being performed at a driver level or at a networking stack level; selecting the packet for transmission from the queue at the network stack level if scheduling is currently being performed at the network stack level; and selecting the packet for transmission from the queue at the driver level if scheduling is currently being performed at the driver level.
    Type: Application
    Filed: September 15, 2012
    Publication date: August 8, 2013
    Inventors: Cahya Masputra, Padmavathy Bhooma, Joe Liu
  • Publication number: 20130203422
    Abstract: A client device having a networking layer and a network driver layer for transmitting network packets comprising: a plurality of transmit queues configured at the network layer, each of the transmit queues having different packet service classifications associated therewith; a classifier module for classifying packets according to the different packet service classifications, wherein a packet to be transmitted is stored in one of the transmit queues based on the packet service classifications, wherein one or more of the traffic service classifications comprise opportunistic traffic classes and other traffic service classifications comprise non-opportunistic traffic classes; and a socket layer comprising socket transmitting data from an application associated with each traffic service classification, wherein a socket associated with an opportunistic traffic class is automatically suspended in response to detecting a network interface of the client device being throttled.
    Type: Application
    Filed: September 15, 2012
    Publication date: August 8, 2013
    Inventors: Cahya Masputra, Padmavathy Bhooma, Joshua Verweyst Graessley
  • Publication number: 20130201828
    Abstract: A method for suspending data transmission on a client device comprising: designating certain sockets within a socket layer on the client device as opportunistic and other sockets as non-opportunistic; detecting that a network interface is being throttled by utilizing flow feedback from a layer beneath the socket layer; and responsively suspending any opportunistic sockets while the network interface is throttled.
    Type: Application
    Filed: September 15, 2012
    Publication date: August 8, 2013
    Inventors: Cahya Masputra, Padmavathy Bhooma
  • Publication number: 20130201833
    Abstract: A method for efficiently transmitting packets from a client device comprising: receiving a packet to be transmitted at a network socket on a client device; calculating a flow hash value for the packet, the flow hash value associating the packet with a particular network flow, the flow hash value usable to track the packet and other packets associated with the particular network flow; receiving feedback for the flow from a network layer of the client device beneath the socket layer, the flow being identified using the flow hash value, the feedback indicating conditions associated with the flow on a network link; and performing flow control operations on the flow responsive to the feedback for the flow.
    Type: Application
    Filed: September 15, 2012
    Publication date: August 8, 2013
    Inventors: Cahya Masputra, Padmavathy Bhooma
  • Patent number: 8488609
    Abstract: A routing table lookup algorithm is described that, for a first outbound packet, performs a first route lookup into the routing table with a first search key that includes the first packet's destination address and a first network interface identifier, and, for a second outbound packet, performs a second route lookup into the routing table with a second search key that includes the second outbound packet's destination address but does not include any network interface identifier.
    Type: Grant
    Filed: May 17, 2012
    Date of Patent: July 16, 2013
    Assignee: Apple Inc.
    Inventors: Cahya Masputra, Dieter Siegmund, Vincent Lubet
  • Publication number: 20120257608
    Abstract: A routing table lookup algorithm is described that, for a first outbound packet, performs a first route lookup into the routing table with a first search key that includes the first packet's destination address and a first network interface identifier, and, for a second outbound packet, performs a second route lookup into the routing table with a second search key that includes the second outbound packet's destination address but does not include any network interface identifier.
    Type: Application
    Filed: May 17, 2012
    Publication date: October 11, 2012
    Inventors: Cahya Masputra, Dieter Siegmund, Vincent Lubet
  • Publication number: 20120254385
    Abstract: A method and apparatus of a device that determines if an address is reachable based on the time the device has received a packet with the address of another device is described. The device receives a packet for transmission to the other device, where the packet includes an address of the second device. The device determines if that address is reachable based on a time that the device receives another packet from the second device. The device further receives another packet from the second device and stores the time the device received the other packet in a reachability record corresponding to that address.
    Type: Application
    Filed: March 31, 2011
    Publication date: October 4, 2012
    Inventor: Cahya A. Masputra
  • Patent number: 8265078
    Abstract: A method is described that involves, in view of a first default entry for a first subnet that is reachable through a first network service, where the first default entry has a numeric destination value, and in view of a second default entry for a second subnet that is reachable through a second network service, wherein the second default entry has the numeric destination value, sorting the first and second default entries by deciding that the first network service is ranked higher than the second network service. The method further involves configuring the first default entry within a routing table to have the numeric destination and not an interface component within the first default entry's search term, and, configuring the second default entry within the routing table to have the numeric destination and the second network service's interface component within the second default entry's search term.
    Type: Grant
    Filed: September 30, 2008
    Date of Patent: September 11, 2012
    Assignee: Apple Inc.
    Inventors: Cahya Masputra, Dieter Siegmund, Vincent Lubet
  • Publication number: 20120182978
    Abstract: An apparatus and method are described for managing router and communication interfaces.
    Type: Application
    Filed: January 14, 2011
    Publication date: July 19, 2012
    Inventor: Cahya A. Masputra
  • Patent number: 8189587
    Abstract: A routing table lookup algorithm is described that, for a first outbound packet, performs a first route lookup into the routing table with a first search key that includes the first packet's destination address and a first network interface identifier, and, for a second outbound packet, performs a second route lookup into the routing table with a second search key that includes the second outbound packet's destination address but does not include any network interface identifier.
    Type: Grant
    Filed: September 30, 2008
    Date of Patent: May 29, 2012
    Assignee: Apple Inc.
    Inventors: Cahya Masputra, Dieter Siegmund, Vincent Lubet
  • Publication number: 20120057596
    Abstract: A method is described that involves associating an outbound packet with a first network interface and constructing a search key from an identifier of the first network interface and the outbound packet's destination address. The method further entails submitting the search key to a routing function where the routing function identifies the outbound packet's next hop address. The method also involves transmitting the outbound packet to a node identified by the next hop address from the first network interface.
    Type: Application
    Filed: November 10, 2011
    Publication date: March 8, 2012
    Inventors: Cahya Masputra, Dieter Siegmund, Vincent Lubet
  • Patent number: 8064455
    Abstract: A method is described that involves associating an outbound packet with a first network interface and constructing a search key from an identifier of the first network interface and the outbound packet's destination address. The method further entails submitting the search key to a routing function where the routing function identifies the outbound packet's next hop address. The method also involves transmitting the outbound packet to a node identified by the next hop address from the first network interface.
    Type: Grant
    Filed: September 30, 2008
    Date of Patent: November 22, 2011
    Assignee: Apple Inc.
    Inventors: Cahya Masputra, Dieter Siegmund, Vincent Lubet
  • Publication number: 20110252429
    Abstract: Services for a personal electronic device are provided through which a form of background processing or multitasking is supported. The disclosed services permit user applications to take advantage of background processing without significant negative consequences to a user's experience of the foreground process or the personal electronic device's power resources. To effect the disclosed multitasking, one or more of a number of operational restrictions may be enforced. By way of example, thread priority levels may be overlapped between the foreground and background states. In addition, system resource availability may be restricted based on whether a process is receiving user input. In some instances, an application may be suspended rather than being placed into the background state. Implementation of the disclosed services may be substantially transparent to the executing user applications and, in some cases, may be performed without the user application's explicit cooperation.
    Type: Application
    Filed: December 2, 2010
    Publication date: October 13, 2011
    Applicant: APPLE INC.
    Inventors: Lucia Ballard, David W. Goodwin, Joseph Sokol, Jr., Matthew G. Watson, Neil G. Crane, Cahya Masputra, Charles Srisuwananukorn, Christopher Marcellino, Scott Forstall, Gregory Novick
  • Publication number: 20110249668
    Abstract: Services for a personal electronic device are provided through which a form of background processing or multitasking is supported. The disclosed services permit user applications to take advantage of background processing without significant negative consequences to a user's experience of the foreground process or the personal electronic device's power resources. To effect the disclosed multitasking, one or more of a number of operational restrictions may be enforced. By way of example, inactive network applications (e.g., VOIP applications) may be placed in a suspended state until a message is received targeting the application (e.g., an incoming phone call or a heartbeat needed message). The user application may be placed into the background state to respond to the message and then returned to the non-active state (e.g., if the message was a heartbeat needed) message or to the foreground state if appropriate (e.g., the user elects to answer the incoming call).
    Type: Application
    Filed: August 26, 2010
    Publication date: October 13, 2011
    Applicant: APPLE INC.
    Inventors: Michael Van Milligan, Thomas B. Duffy, JR., Eric Albert, Damien Sorresso, Neil G. Crane, Lucia Ballard, Cahya Masputra
  • Publication number: 20110222542
    Abstract: A method is described that entails assigning a source network address to an outbound packet, associating the outbound packet with a network service and identifying a first network interface associated with the network service. The method further entails inquiring into and confirming that the first network interface is associated with the source network address. The method further entails constructing a search key from an identifier of the first network interface and the outbound packet's destination address. The method further entails submitting the search key to a routing function, the routing function providing the outbound packet's next hop address. The method further entails transmitting the outbound packet to a node identified by the next hop address from the network interface.
    Type: Application
    Filed: May 9, 2011
    Publication date: September 15, 2011
    Inventors: Cahya Masputra, Dieter Siegmund, Vincent Lubet