Abstract:
Rate limiting operations can be implemented at an ingress DMA unit to minimize the probability of dropped packets because of differences between the communication rates of the ingress DMA unit and a packet processing engine. The communication rate associated with each of the software ports of a communication device can be determined and an aggregate software port ingress rate can be calculated by summing the communication rate associated with each of the software ports. The transfer rate associated with the ingress DMA unit can be limited so that packets are transmitted from the ingress DMA unit to the packet processing engine at a communication rate that is at least equal to the aggregate software port ingress rate. If each software port comprises a dedicated rate-limited ingress DMA queue, packets from a rate-limited ingress DMA queue can be transmitted at the at least the communication rate of the corresponding software port.
Abstract:
This disclosure provides systems, methods and apparatus, including computer programs encoded on computer storage media for encapsulating and decapsulating packets for transmission via virtual private networks (VPNs). In one aspect, a packet is identified for transmission via a specified VPN. An ordered sequence of operations corresponding to the VPN may be received, with a set of parameters corresponding to the ordered sequence of operations. An encapsulated packet may be generated by performing the ordered sequence of operations on the packet using the set of parameters.