Browse Prior Art Database

Method to immediately identify corrupt TCP frames at layer 2

IP.com Disclosure Number: IPCOM000245188D
Publication Date: 2016-Feb-18
Document File: 2 page(s) / 24K

Publishing Venue

The IP.com Prior Art Database

Abstract

Method to quickly identify if frames/packets are corrupted during bus transaction (from driver to adapter transfer). The proposed method will use existing protocol header fields to achieve this. Using this method, when it identifies if the packet is corrupted the the host will halt the packet processing to maintain the failure state for further debugging

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 51% of the total text.

Page 01 of 2

Method to immediately identify corrupt TCP frames at layer 2

Disclosed is a method which is a debugging technique that can be used to resolve very complex

Network Interface Card (NIC) device driver issues without involving high end Peripheral Component Interconnect (PCI) bus analyzers which are very expensive and not practical to use at all environments. A transmission control protocol (TCP) application will write big chunk (example 64KB) of data to a socket. The socket layer will copy data into kernel and since TCP is a stream based protocol, data is provided to TCP layer based on the free space in the TCP/Socket buffers. This data will be broken down into smaller chunks based on MSS value by TCP layer and will be transmitted out. These smaller chunks on the receive side are grouped together by TCP layer and socket layer will copy out data to application. The application can then compare and check if transmitted and received large data is equal otherwise data miscompare can be reported. During development of NIC device driver, this type of application is generally used. The drawback of this type of application is, if data corruption happens when the data is provided by NIC driver to NIC hardware for Direct Memory Access (DMA) into NIC internal memory then corrupt frame is not identified immediately but has to wait till application compares huge chunk of data. Generally Peripheral Component Interconnect (PCI) analyzer will be used to identify what and why data corruption happened. PCI analyzer will have limited memory. By the time the application compares huge chunk of data that was transmitted and received, there is a high chance of PCI analyzer running out of memory and hence over write the corrupted frame data.

Current solution for this issue is, PCI analyzer should have huge memory and the application should be customized to write markers at a regular intervals. It is a tedious job for searching the markers in the PCI analyzer.

If a method is devised to figure out corrupt frame immediately at Layer 2 and then hit a machine break point then PCI analyzer even with little memory will show corrupt frame mostly on top without searching and also no customization required for application. Disclosed is a method that will identify corrupt TCP frames encapsulated into Ethernet frame immediately at layer 2 while receiving. This method helps identify frames that were corrupted below TCP laye...