-
公开(公告)号:US20220166856A1
公开(公告)日:2022-05-26
申请号:US17535351
申请日:2021-11-24
Applicant: MetaSwitch Networks Ltd.
Inventor: Matthew Ian Ronald WILLIAMS , Richard John WHITEHOUSE , Christopher Neil SWINDLE , Colin REYNOLDS
IPC: H04L69/22
Abstract: In operation, packets traverse the packet processing data structure, and the network processing represented by each object in the data structure is applied to each packet. From time to time, the packet processing data structure may need to be updated. Embodiments of the present disclosure provide for lock-free updating of a packet processing data structure by means of epoch-based garbage collection. In embodiments, a particular past packet processing epoch is considered to be no longer referenced by any cores when the sequence numbers recorded in each said memory location are different to the sequence number of that particular past packet processing epoch. The deletion thread checks both whether a past epoch is being referenced by any packets and whether it is being reference by any cores. Thus memory is safely freed without having any impact on any packet processing which may be occurring in parallel to the deletion thread.
-
公开(公告)号:US20240022651A1
公开(公告)日:2024-01-18
申请号:US18135103
申请日:2023-04-14
Applicant: MetaSwitch Networks Ltd.
Inventor: Matthew Ian Ronald WILLIAMS , Richard John WHITEHOUSE , Christopher Neil SWINDLE , Colin REYNOLDS
IPC: H04L69/22
CPC classification number: H04L69/22 , H04L2212/00
Abstract: In operation, packets traverse the packet processing data structure, and the network processing represented by each object in the data structure is applied to each packet. From time to time, the packet processing data structure may need to be updated. Embodiments of the present disclosure provide for lock-free updating of a packet processing data structure by means of epoch-based garbage collection. In embodiments, a particular past packet processing epoch is considered to be no longer referenced by any cores when the sequence numbers recorded in each said memory location are different to the sequence number of that particular past packet processing epoch. The deletion thread checks both whether a past epoch is being referenced by any packets and whether it is being reference by any cores. Thus memory is safely freed without having any impact on any packet processing which may be occurring in parallel to the deletion thread.
-