Patent application number | Description | Published |
20110179083 | Accessing Specialized Fileserver - A method and apparatus of a host that accesses files from a portable storage device with a shared filesystem is described. In an exemplary method, the host transmits a request to access the shared filesystem, where the shared filesystem includes a security policy that disallows one application accessing a file in the shared filesystem corresponding to another application. The host further receives an indication of the result of the request. | 07-21-2011 |
20110179096 | Specialized Network Fileserver - A method and apparatus of a portable storage device that provides a specialized network fileserver is described. In an exemplary method, the portable storage device retrieves a list of applications on the portable storage device, where each of the applications has a private filesystem. For each of the applications, the portable storage device determines if that application will share the corresponding private filesystem and adds that private filesystem to a shared filesystem of the portable storage device is that is shareable. The portable storage device further advertises the shared filesystem to a host that is coupled to the portable storage device. | 07-21-2011 |
20110179203 | Portable Storage Interface - A method and apparatus of a portable storage device that provides a tethering and portable storage service to a host is described. In an exemplary method, the portable storage device configures a tethering and a portable storage service interface for the host. The portable storage device provides the tethering service to a network for the host through the tethering interface. In addition, the portable storage device shares files stored on the portable storage device through the portable storage interface. | 07-21-2011 |
20130103860 | PORTABLE STORAGE INTERFACE - A method and apparatus of a portable storage device that provides a tethering and portable storage service to a host is described. In an exemplary method, the portable storage device configures a tethering and a portable storage service interface for the host. The portable storage device provides the tethering service to a network for the host through the tethering interface. In addition, the portable storage device shares files stored on the portable storage device through the portable storage interface. | 04-25-2013 |
20150341366 | SPECIALIZED NETWORK FILESERVER - A method and apparatus of a portable storage device that provides a specialized network fileserver is described. In an exemplary method, the portable storage device retrieves a list of applications on the portable storage device, where each of the applications has a private filesystem. For each of the applications, the portable storage device determines if that application will share the corresponding private filesystem and adds that private filesystem to a shared filesystem of the portable storage device is that is shareable. The portable storage device further advertises the shared filesystem to a host that is coupled to the portable storage device. | 11-26-2015 |
Patent application number | Description | Published |
20090304000 | OUTBOUND TRANSMISSION OF PACKET BASED ON ROUTING SEARCH KEY CONSTRUCTED FROM PACKET DESTINATION ADDRESS AND OUTBOUND INTERFACE - 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. | 12-10-2009 |
20090304001 | SOURCE ADDRESS BASED ROUTING PROCESS - 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. | 12-10-2009 |
20090304005 | ROUTING TABLE LOOKUP ALGORITHM EMPLOYING SEARCH KEY HAVING DESTINATION ADDRESS AND INTERFACE COMPONENT - 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. | 12-10-2009 |
20090304006 | ROUTING TABLE BUILD ALGORITHM FOR A ROUTING TABLE THAT USES A SEARCH KEY CONSTRUCTED FROM PACKET DESTINATION ADDRESS AND OUTBOUND INTERFACE - 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. | 12-10-2009 |
20100267368 | HANDHELD DEVICE CAPABLE OF PROVIDING DATA TETHERING SERVICES WHILE MAINTAINING SUITE OF HANDHELD SERVICE FUNCTIONS - An improved tethering system is described in which a handheld device can be used by a user to reach the same network that the handheld device also provides access to for a tethering machine. Specifically, as described herein, a handheld device provides a tethering machine with access to a remote network (e.g., the Internet) through a wireless network that the handheld device is communicatively coupled to. Not only is the handheld device able to support multiple data flows between the tethering machine and the remote network, but also, the handheld device is capable of being used by a user to “surf” or otherwise access the same remote network that the handheld device provides the tethering machine with access to. For example, if the remote network is the Internet and the handheld device is a “smart phone”, a user who is holding the smart phone can access the Internet concurrently with one or more applications on the tethering machine that are also access the Internet. Moreover, the smart phone is also capable of concurrently supporting other networked services that the smart phone is designed to provide such as voicemail services, messaging services, and telephony (cell phone) services. | 10-21-2010 |
20110222542 | SOURCE ADDRESS BASED ROUTING PROCESS - 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. | 09-15-2011 |
20110249668 | Opportunistic Multitasking - 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). | 10-13-2011 |
20110252429 | Opportunistic Multitasking - 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. | 10-13-2011 |
20120057596 | Outbound Transmission Of Packet Based On Routing Search Key Constructed From Packet Destination Address And Outbound Interface - 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. | 03-08-2012 |
20120257608 | ROUTING TABLE LOOKOUP ALGORITHM EMPLOYING SEARCH KEY HAVING DESTINATION ADDRESS AND INTERFACE COMPONENT - 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. | 10-11-2012 |
20130201825 | SYSTEM AND METHOD FOR ADJUSTING TRANSPORT LAYER PROCESSING DURING FLOW CONTROL AND SUSPENSION STATES - 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. | 08-08-2013 |
20130201828 | SYSTEM AND METHOD EMPLOYING INTELLIGENT FEEDBACK MECHANISMS FOR TRAFFIC SUSPENSION ON A CLIENT DEVICE - 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. | 08-08-2013 |
20130201833 | SYSTEM AND METHOD EMPLOYING INTELLIGENT FEEDBACK MECHANISMS FOR FLOW CONTROL ON A CLIENT DEVICE - 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. | 08-08-2013 |
20130201843 | SYSTEM AND METHOD FOR PROCESSING NETWORK PACKETS RECEIVED ON A CLIENT DEVICE USING OPPORTUNISTIC POLLING BETWEEN NETWORKING LAYERS - 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. | 08-08-2013 |
20130201927 | SYSTEM AND METHOD FOR SCHEDULING PACKET TRANSMISSION ON A CLIENT DEVICE - 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. | 08-08-2013 |
20130201995 | SYSTEM AND METHOD FOR PERFORMING PACKET QUEUING ON A CLIENT DEVICE USING PACKET SERVICE CLASSIFICATIONS - 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. | 08-08-2013 |
20130201996 | SCHEDULING PACKET TRANSMISSION ON A CLIENT DEVICE USING PACKET CLASSIFICATIONS INCLUDING HIGH PRIORITY NETWORK CONTROL PACKETS - 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 service classifications. | 08-08-2013 |
20130201997 | SYSTEM AND METHOD FOR LOCAL FLOW CONTROL AND ADVISORY USING A FAIRNESS-BASED QUEUE MANAGEMENT ALGORITHM - A data processing device for transmitting network packets comprising: packet classification logic for classifying packets according to different packet service classifications, wherein a packet to be transmitted is stored in one or more transmit queues based on the packet service classifications and wherein each packet is associated with a particular flow; and queue management logic for queuing packets in the one or more transmit queues utilizing a flow control policy implemented on a per-flow basis, wherein a number of queued packets for each flow is monitored and when the number of queued packets for a particular flow reaches a specified threshold, then flow control for that particular flow is turned on, and wherein the queue management logic implements a stochastic fair blue (SFB) algorithm to track the number of packets within each transmit queue. | 08-08-2013 |
20130203422 | SYSTEM AND METHOD FOR SCHEDULING PACKET TRANSMISSION ON A CLIENT DEVICE USING TRAFFIC CLASSES AND OPPORTUNISTIC BEHAVIOR - 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. | 08-08-2013 |
20130204965 | PACKET TRANSMISSION ON A CLIENT USING IMPLICIT ENABLING OF FEATURES BASED ON SERVICE CLASSIFICATIONS - 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. | 08-08-2013 |
Patent application number | Description | Published |
20110179153 | METHOD AND APPARATUS FOR IDLING A NETWORK CONNECTION - The described embodiments provide a system that controls the operating state of a network interface. During operation, in response to receiving a request from an application to use the network interface for a route, the system creates a route structure for the route and increments a route reference counter in an interface data structure for the network interface. Upon subsequently determining that the application is no longer using the route, the system sets a route expiration timer in the route structure to a predetermined expiration time. When the route expiration timer expires, the system deletes the route structure and decrements the route reference counter in the interface data structure. When decrementing the route reference counter in the interface data structure causes the route reference counter to be equal to zero, the system sends a signal to a configuration application to inform the application that the network interface can be idled. | 07-21-2011 |
20110179163 | METHOD AND APPARATUS FOR IDLING A NETWORK CONNECTION - The described embodiments include a system that configures a network interface. During operation, the system receives a signal from an operating system indicating that the network interface can be idled. The signal is sent from the operating system as soon as the operating system determines that a final route structure that depended on the network interface has expired and been deleted. The system then determines if an application has established a route that uses the network interface since the signal was sent from the operating system. If not, the system causes the network interface to be idled. Otherwise, the system leaves the network interface in a current operating state. | 07-21-2011 |
20120182978 | System and Method For Managing Routers and Communication Interfaces On A Computing Device - An apparatus and method are described for managing router and communication interfaces. For example, one embodiment of a method implemented on a computing device having a plurality of communication interfaces comprises: receiving a plurality of router advertisement packets indicating a preference level of each of a plurality of routers, each of the plurality of routers reachable through one of the communication interfaces on the computing device; designating one of the communication interfaces as a primary interface and the remainder of the communication interfaces as scoped interfaces; specifying a primary router for the primary interface based on a preference level associated with the primary router, the primary router selected from a group of all of the routers reachable through the primary interface; and specifying a default router for each of the scoped interfaces based on a preference level of each default router, each default router selected from a group of all of the routers reachable through its scoped interface. | 07-19-2012 |
20120254385 | Method and Apparatus for Passive Neighbor Unreachability Detection - 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. | 10-04-2012 |
20130332586 | PROVIDING IPV6 CONNECTIVITY THROUGH SHARED EXTERNAL INTERFACES ON ELECTRONIC DEVICES - The disclosed embodiments provide a system that shares an Internet connection. During operation, the system provides, on an electronic device, an external interface with the Internet connection and a set of internal interfaces sharing the external interface. Upon detecting a support of Internet Protocol version 6 (IPv6) by the external interface, the system configures the electronic device to provide IPv6 connectivity to the internal interfaces. First, the system provides an IPv6 router to client devices connected to the internal interfaces. Next, the system uses the IPv6 router and an IPv6 prefix from the Internet connection to perform prefix proxying with the client devices. | 12-12-2013 |