Network Packet Resend via Offset Tracking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional networked storage systems inefficiently resend entire payloads when a single packet is missing, wasting network bandwidth and computational resources.

Innovation Solution

The system splits the payload into data packets with offset values, allowing only missing packets and subsequent packets to be resent, rather than the entire payload, and uses RDMA headers to track packet positions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the first storage system node resends the entire payload when a packet is missing, then data reliability is ensured, but network bandwidth and processing resources are wasted

Engineering Contradiction:
Improvedata reliabilityVSAvoidnetwork bandwidth
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The payload is divided into multiple data packets, each with a sequence number. When a packet is lost, only that specific packet needs to be resent rather than the entire payload, reducing network bandwidth consumption while maintaining data reliability

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The second storage system node sends back a NACK packet indicating which specific packet was not received. This feedback mechanism allows the first storage system node to identify and resend only the missing packet, optimizing bandwidth usage

Inventive Principle:
Principle #23Feedback

2Reliability

If the first storage system node resends the entire payload when a packet is missing, then data reliability is ensured, but computing resources are wasted

Engineering Contradiction:
Improvedata reliabilityVSAvoidprocessing resources
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The payload is segmented into numbered packets with tracking information. The first storage system node maintains record of sent packets and uses this information to resend only missing packets, reducing processing overhead

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Feedback packets from the second storage system node provide specific information about which packets are missing. This enables the first storage system node to efficiently identify and resend only the necessary packets, optimizing computing resource utilization

Inventive Principle:
Principle #23Feedback

3Device complexity

If conventional packet resend methods are used, then simplicity is maintained, but network efficiency is reduced

Engineering Contradiction:
Improvesystem simplicityVSAvoidnetwork efficiency
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The payload is divided into packets with sequence numbers and offset values. This segmentation enables efficient selective resend of only missing packets, significantly improving network efficiency while adding manageable complexity

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Packet headers include additional parameters such as sequence numbers and offset values that track packet positions. These parameter changes enable the system to identify missing packets and resend only those, improving network efficiency

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12309046B2Methods and systems for resending missing network data packets
Publication Date: 2025.05.20 NETAPP INC
  • US12309046B2 patent drawing
  • US12309046B2 patent drawing
  • US12309046B2 patent drawing

AI summary

Methods and systems for a networked storage environment are provided. One method includes splitting, by a first node, a payload into a plurality of data packets, each data packet having a portion of the payload indicated by an offset value indicating a position of each portion within the payload; transmitting, by the first node, the plurality of data packets to a second node using a network connection for a transaction, each data packet including a header generated by the first node having the offset value and a payload size; receiving, by the first node, a message from the second node indicating an offset value of a missing payload of a missing data packet from among the plurality of data packets; and resending, by the first node, the missing data packet and any other data packet whose offset value occurs after the offset value of the missing payload.