The data link layer is the first layer that handles the packet as such. It groups bits that have been organized into a low-level logical unit called a frame. It then waits for acknowledgment that frames were received and retransmits any frames that are lost, performing a cyclical redundancy check (CRC) on each frame. The data link layer connects the physical aspects of a network with the abstractions of software.