Packet servicing priority based on communication initialization
AssigneeItron Global SARL
InventorsFabrice Monier, Imad Jamil, Yacine Khaled, Iskander Banaouas
Life of this patent
Estimating the term…
Abstract
Techniques directed to servicing communications based on when communication sessions are initialized for nodes are described. For example, a routing device may prioritize packets in a buffer according to when nodes have initiated communication sessions with a service provider or another node. The routing device may give priority to nodes that have first initiated communication sessions. This may avoid communication sessions ending prematurely due to time-out periods and/or avoid delays in completing communication sessions.
Claims20
A method comprising:
- receiving, by a router, a first Protocol Data Unit (PDU) designated to be sent to a first node, the first PDU being associated with a first communication session;
- receiving, by the router, a second PDU designated to be sent to a second node, the second PDU being associated with a second communication session;
- storing, by the router, the second PDU in a buffer;
- storing, by the router, the first PDU in the buffer;
- generating, by the router, a tracking list indicating that the second communication session associated with the second node was initiated before the first communication session associated with the first node, the tracking list including a predetermined number of positions representing a corresponding number of priorities prioritizing nodes that are supported by the router;
- determining that the predetermined number of positions of the tracking list are full;
- in response to determining that the predetermined number of positions of the tracking list are full:
- determining that no data exists in the buffer;
- in response to determining that no data exists in the buffer:
- removing first information associated with an oldest serviced node from the tracking list, the oldest serviced node being a service node from the tracking list with which it has been longest since the router has received communication;
- adding second information associated with the first node to the tracking list;
- adding the first PDU associated with the first node to the buffer;
- and
- prioritizing the first PDU in the buffer.
A routing device comprising:
- one or more processors;
- and
- memory communicatively coupled to the one or more processors, the memory storing one or more instructions that, when executed by the one or more processors, cause the one or more processors to perform operations comprising:
- receiving first data designated to be sent to a first node;
- receiving second data designated to be sent to a second node;
- storing the first data and the second data in a buffer;
- prioritizing the first data and the second data in the buffer according to when a first communication session was initiated for the first node and when a second communication session was initiated for the second node;
- generating a tracking list including a predetermined number of positions representing a corresponding number of priorities;
- determining that the predetermined number of positions of the tracking list are full;
- in response to determining that the predetermined number of positions of the tracking list are full:
- determining that no data exists in the buffer;
- in response to determining that no data exists in the buffer:
- removing first information associated with an oldest serviced node from the tracking list, the oldest serviced node being a service node from the tracking list with which it has been longest since the routing device has received communication;
- adding second information associated with a new node to the tracking list;
- adding new data associated with the new node to the buffer;
- and
- prioritizing the new data in the buffer.
One or more non-transitory computer-readable media storing executable instructions that, when executed by one or more processors of a routing device, cause the one or more processors to perform operations comprising:
- receiving, from a service provider, first data designated to be sent to a first node that is supported by the routing device;
- receiving, from the service provider, second data designated to be sent to a second node that is supported by the routing device;
- storing the first data and the second data in a buffer;
- prioritizing the first data and the second data in the buffer according to when a first communication session was initiated for the first node and when a second communication session was initiated for the second node;
- generating a tracking list including a predetermined number of positions representing a corresponding number of priorities;
- determining that the predetermined number of positions of the tracking list are full;
- in response to determining that the predetermined number of positions of the tracking list are full:
- determining that no data exists in the buffer;
- in response to determining that no data exists in the buffer:
- removing first information associated with an oldest serviced node from the tracking list, the oldest serviced node being a service node from the tracking list with which it has been longest since the router has received communication;
- adding second information associated with a new node to the tracking list;
- adding new data associated with the new node to the buffer;
- and
- prioritizing the new data in the buffer.
Dependencies are inferred from the claim text.