Reset Search
 

 

Article

What are the possible causes of a TCP packet coming to CPU for processing?

« Go Back

Information

 
TitleWhat are the possible causes of a TCP packet coming to CPU for processing?
Question
At times we see that the Normal TCP packets are being received at the LP CPU. This results in CPU cycle being consumed to process the packet and a High CPU condition, even if the end result of the packet is to be dropped.
Environment
Answer
Here are few common scenarios, when normal TCP traffic hit the LP CPU. A sample packet capture is used here to explain the various fields to identify the reason:

[Sample output]

ppcr_rx_packet]: Packet received
Time stamp : 00 day(s) 18h 01m 45s:,
TM Header: [ 059d 0096 0000 ]
Type: Fabric Unicast(0x00000000) Size: 1500 Class: 0 Src sys port: 150
Dest Port: 0 Drop Prec: 0 Ing Q Sig: 0 Out mirr dis: 0x0 Excl src: 0 Sys mc: 0
**********************************************************************
Packet size: 1431, XPP reason code: 0x00000000
00: 05f0 0000 9c50 006e-0396 9008 0000 0000 FID = 0x05f0
10: cc4e 2495 8000 0835-7105 2dcc 0800 4500 Offset = 0x10
20: 0579 20f2 4000 2f06-5ea6 6144 e882 cb00 VLAN = 110(0x006e)
30: b21f 85a6 01bb f00f-67d7 a95d 9859 8018 CAM = 0x0b4804(R)
40: fcc0 6ccf 0000 0101-080a 01b0 8fda 1a3b SFLOW = 0
50: 9606 1703 0305 402b-5795 04d2 60d2 c0b9 DBL TAG = 0
60: 5a4e 53f9 f7a9 570a-3b38 f60a c283 a341
70: d3b4 ffa1 ffd7 f5c7-9ae6 2bc3 ca53 92bc
Pri CPU MON SRC PType US BRD DAV SAV DPV SV ER TXA SAS Tag MVID
0 0 0 1/15 0 1 0 0 1 1 1 0 0 0 1 0


1. The IP Packet size is larger than the egress interface MTU (Usually 1500 bytes) and the Don't Fragment (DF-bit) is set on the packet.

Total Frame Size: 1500 (This is the size including the ethernet header)
Actual size of theIP Packet'0579'


2. The ingress interface is configured with the ip tcp-adjust-mss command.
When this command is configured, all the TCP packets with 'SYN' flag set are sent to CPU to re-write the MSS value to configured value.

interface ethernet 2/1
ip address 10.10.10.1/30
ip tcp adjust-mss 1000


3. Packet has to be tuned to a different interface other than the actual interface as per the normal routing logic. This could happen if the ingress interface has Policy-Based Routing (PBR) configured, and some route-map is used to set the next hop of the interface to push the traffic to a different interface.

interface ve 110
port-name ADS_Injection_Interface
ip address 43.245.69.10/30
ip policy route-map inject-map!


4. One ARM Routing situation, when the source and destination both are present on the same physical interface. For example - a host in vlan x sends some traffic to another host y which is in a different vlan. The router has to perform routing but when SA and DA both are present, such packets are treated differently and not forwarded in hardware by default.

Below output is an example of One ARM routing, where the packet comes at eth13/2 in vlan 729, and then forwarded in Software to the same port e13/2 in vlan 709.

LP-13#[ppcr_rx_packet]: Packet received
[Received Packet]
Dest Port: 0 Drop Prec: 1 Ing Q Sig: 0 Out mirr dis: 0x0 Excl src: 0 Sys mc: 0
**********************************************************************
Packet size: 1530, XPP reason code: 0x00000000
20: 05dc 2017 4000 4006-da9a 0a01 1d21 0a01 VLAN = 729(0x02d9)
Pri CPU MON SRC PType US BRD DAV SAV DPV SV ER TXA SAS Tag MVID
1 0 0 13/2 0 1 0 1 1 1 1 0 0 0 1 0

10.1.29.33 -> 10.1.9.64 TCP [22 -> 35020] [Flags:uAprsf]
**********************************************************************

[Forwarded Packet]
[ppcr_tx_packet] ACTION: Forward packet using fid 0x0600
20: 05dc 2016 4000 4006-da9b 0a01 1d21 0a01 VLAN = 709(0x02c5)
[xpp10ge_cpu_forward_debug]: Forward LP packet
Time stamp : 00 day(s) 02h 35m 01s:,
TM Header: [ 1010 0600 0600 ]
Type: Unicast(0x00000000) Size: 16 Dst ID: 0x006 Drp Pri: 0 Snp: 0 Cls: 0x00000000
**********************************************************************
Pri CPU MON SRC PType US BRD DAV SAV DPV SV ER TXA SAS Tag MVID
1 0 0 13/2 3 0 0 0 0 0 0 0 1 1 0 0
10.1.9.64 -> 10.1.29.33 TCP [35020 -> 22] [Flags:uAprsf]

Additional notes

Feedback

 

Was this article helpful?


   

Feedback

Please tell us how we can make this article more useful.

Characters Remaining: 255