google / google/gvisor

Support PacketBuffer cloning for forwarding

Open
#7,473 1 comment 0 reactions 0 assignees View on GitHub
area: networking type: enhancement
Dominant language
Go
Stars
19.3k
Forks
2k
Avg merge
3d 5h
Merged PRs (30d)
264

Description

### Description

Currently, a deep copy of the packet is made when forwarding [1]. For multicast, this means that a deep copy will be made for each output interface. To make this more efficient, the packet could instead just be cloned. When cloning, the reserved header bytes needs to be able to be specified though.

[1] https://github.com/google/gvisor/blob/47b5915a7b31922d83473156f4679a8891ee98e6/pkg/tcpip/network/ipv4/ipv4.go#L710

### Is this feature related to a specific bug?

_No response_

### Do you have a specific solution in mind?

_No response_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.