ATM uses fixed-sized cells to transfer data over both virtual channel connections (VCCs) and virtual path connections (VPCs). It supports multiple service categories including constant bit rate, variable bit rate, available bit rate and unspecified bit rate. The ATM protocol architecture defines layers for the user plane, control plane, and management plane. It uses the ATM adaptation layer to map data from upper layer services into ATM cells for transmission over the ATM layer and physical layer.