摘要:
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.
摘要:
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.
摘要:
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.
摘要:
Embodiments of the present invention are directed to a method and system for processing data to be transmitted in a transmission medium, including storing in memory a segment of data to be transmitted where the segment of data is larger than the largest size data packet allowed for transmission by the transmission medium. A socket layer batch processes the segment to produce an array of linked data blocks where each data block is smaller than the largest transmission size of the TCP layer. A TCP layer batch processes the array to add a first header to each block of the array of linked data blocks. An IP layer batch processes the array to add a second header to each block of the array of linked data blocks. The socket layer then identifies blocks of the array to a communication subsystem for individual packet communication over the transmission medium.
摘要:
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.
摘要:
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.
摘要:
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.
摘要:
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.
摘要:
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.
摘要:
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.