US9887910B2ActiveUtilityA1

Method for retransmitting packet, data server using the same, and packet retransmitting system

29
Assignee: UNIV NATIONAL CHIAO TUNGPriority: Jan 13, 2015Filed: Feb 26, 2015Granted: Feb 6, 2018
Est. expiryJan 13, 2035(~8.5 yrs left)· nominal 20-yr term from priority
H04L 43/0829H04L 41/12H04L 45/28H04L 41/122H04L 41/40
29
PatentIndex Score
0
Cited by
23
References
11
Claims

Abstract

A method for retransmitting packet, a data server using the same and a packet retransmitting system are provided. The packet retransmitting system includes a control server, a network switch, a plurality of upper nodes, and the data server. Terminal nodes download data packets provided by the data server through the upper nodes, respectively. The data server receives missing packet reports in which the data packets correspond to the terminal nodes via the network switch, obtains network topology information related to the terminal nodes from the control server, encodes missing packets in the data packets according to the missing packet reports and the network topology information, and transmits encoded packets encoded from the missing packets to the terminal nodes via the network switch and each of the upper nodes.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A method for retransmitting packet, adapted for a data server, the method comprising: transmitting a plurality of data packets; receiving a plurality of missing packet reports in which the data packets correspond to a plurality of terminal nodes; obtaining network topology information related to the terminal nodes; determining a plurality of first terminal nodes of the terminal nodes, and determining a plurality of second terminal nodes of the terminal nodes, wherein the first terminal nodes belong to a first upper node and the second terminal nodes belong to a second upper node different from the first upper node; encoding a plurality of first missing packets for the first terminal nodes belonging to the first upper node in a first recovery packet according to the missing packet reports and the network topology information, wherein the first recovery packet is encoded only from the first missing packets reported missing by the first terminal nodes; encoding a plurality of second missing packets for the second terminal nodes belonging to the second upper node in a second recovery packet different from the first recovery packet according to the missing packet reports and the network topology information, wherein the second recovery packet is encoded only from the second missing packets reported missing by the second terminal nodes; transmitting the first recovery packet encoded from the first missing packets to the first upper node; and transmitting the second recovery packet encoded from the second missing packets to the second upper node,
 wherein each of the missing packet reports comprises an identification of one of the terminal nodes and an indication corresponding to the missing packets, the network topology information comprises an address lookup table of the terminal nodes and the upper node to which the terminal nodes belong, and wherein the step of encoding the missing packets for the terminal nodes belong to the upper node in the recovery packet according to the missing packet reports and the network topology information comprises: determining the upper node of each of the terminal nodes by looking up the address lookup table according to the identification of one of the terminal nodes in each of the missing packet reports. 
 
     
     
       2. The method according to  claim 1 , wherein the step of encoding the missing packets for the terminal nodes belonging to the upper node in the recovery packet according to the missing packet reports and the network topology information comprises:
 calculating a plurality of packet combinations of the missing packets according to the missing packet reports and the network topology information; and 
 encoding the missing packets according to the packet combinations to generate the recovery packet. 
 
     
     
       3. The method according to  claim 2 , wherein the step of calculating the packet combinations of the missing packets according to the missing packet reports and the network topology information comprises: calculating each of the packet combinations according to the upper node to which each of the terminal nodes belongs and the corresponding missing packet reports. 
     
     
       4. A data server, comprising: a communication unit, configured to transmit a plurality of data packets; a storage unit, configured to store network topology information; and a processing unit, coupled to the communication unit and the storage unit, wherein the processing unit receives a plurality of missing packet reports in which the data packets correspond to a plurality of terminal nodes through the communication unit, obtains the network topology information related to the terminal nodes through the communication unit, determines a plurality of first terminal nodes of the terminal nodes, and determines a plurality of second terminal nodes of the terminal nodes, wherein the first terminal nodes belong to a first upper node and the second terminal nodes belong to a second upper node different from the first upper node, wherein the processing unit encodes a plurality of first missing packets for the first terminal nodes belonging to the first upper node in a first recovery packet according to the missing packet reports and the network topology information, wherein the first recovery packet is encoded only from the first missing packets reported missing by the first terminal nodes, wherein the processing unit encodes a plurality of second missing packets for the second terminal nodes belonging to the second upper node in a second recovery packet different from the first recovery packet according to the missing packet reports and the network topology information, wherein the second recovery packet is encoded only from the second missing packets reported missing by the second terminal nodes, wherein the processor transmits the first recovery packet encoded from the first missing packets to the first upper node through the communication unit, and transmits the second recovery packet encoded from the second missing packets to the second upper node through the communication unit,
 wherein each of the missing packet reports comprises an identification of one of the terminal nodes and an indication corresponding to the missing packets, the network topology information comprises an address lookup table of the terminal nodes and the upper node to which the terminal nodes belong, and the processing unit determines the upper node of each of the terminal nodes by looking up the address lookup table according to the identification of one of the terminal nodes in each of the missing packet reports. 
 
     
     
       5. The data server according to  claim 4 , wherein the processing unit, calculates each plurality of the packet combinations of the missing packets according to the missing packet reports and the network topology information, and encodes the missing packets according to the packet combinations to generate the recovery packet. 
     
     
       6. The data server according to  claim 5 , wherein the processing unit calculates each of packet combinations according to the upper node to which each of the terminal nodes belongs and the corresponding missing packets reports. 
     
     
       7. A packet retransmitting system, comprising: a control server, configured to establish network topology information; a network switch, coupled to the control server; a plurality of upper nodes, individually coupled to the network switch, wherein each of the upper nodes provides a network service to a plurality of terminal nodes; and a data server, coupled to the control server and the network switch, wherein the terminal nodes download a plurality of data packets provided by the data server through the upper nodes, respectively, and the data server receives a plurality of missing packet reports in which the data packets correspond to the terminal nodes via the network switch, obtains the network topology information related to the terminal nodes from the control server, determines a plurality of first terminal nodes of the terminal nodes, and determines a plurality of second terminal nodes of the terminal nodes, wherein the first terminal nodes belong to a first upper node of the upper nodes and the second terminal nodes belong to a second upper node of the upper nodes , the second upper node is different from the first upper node, wherein the data server encodes a plurality of first missing packets for the first terminal nodes belonging to the first upper node in a first recovery packet according to the missing packet reports and the network topology information, wherein the first recovery packet is encoded only from the first missing packets reported missing by the first terminal nodes, wherein the data server encodes a plurality of second missing packets for the second terminal nodes belonging to the second upper node in a second recovery packet different from the first recovery packet according to the missing packet reports and the network topology information, wherein the second recovery packet is encoded only from the second missing packets reported missing by the second terminal nodes, wherein the data server transmits the first recovery packet encoded from the first missing packets to the first upper node, and transmits the second recovery packet encoded from the second missing packets to the second upper node,
 wherein each of the missing packet reports comprises an identification of one of the terminal nodes and an indication corresponding to the missing packets, the network topology information comprises an address lookup table of the terminal nodes and one of the upper nodes to which the terminal nodes belong, and the data server determines one of the upper nodes to which each of the terminal nodes belongs by looking up the address lookup table according to the identification of one of the terminal nodes in each of the missing packet reports. 
 
     
     
       8. The packet retransmitting system according to  claim 7 , wherein the data server calculates a plurality of packet combinations of the missing packets according to the missing packet reports and the network topology information, and encodes the missing packets according to the packet combinations to generate the recovery packet. 
     
     
       9. The packet retransmitting system according to  claim 8 , wherein the data server calculates each of the packet combinations according to one of the upper nodes to which each of the terminal nodes belongs and the corresponding missing packet reports. 
     
     
       10. The packet retransmitting system according to  claim 8 , wherein each of the recovery packets comprises address information of one of the corresponding upper nodes, the network switch receives the recovery packets from the data server and transmits each of the recovery packets individually to one of the corresponding upper nodes according to the corresponding address information of each of the recovery packets, and each of the upper nodes multicasts one of the received recovery packets to the terminal nodes. 
     
     
       11. The packet retransmitting system according to  claim 7 , wherein the network switch comprises an OpenFlow switch, and the control server comprises a software-define networking (SDN) controller, wherein the OpenFlow switch integrates the missing packet reports into a missing packet lookup table according to the address information of the corresponding upper nodes, and the software-defined network controller establishes the network topology information based on the missing packet lookup table.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.