i have read about RAW sockets that they are UNIX domain sockets and don't generally go over the wire unlike TCP or UDP. They are used for interprocess communication. Also they are used in the implementation of new transport layer protocols and are also used in ICMP(for ping).
Physical layer header is not present in the data read from raw sockets?
socket
unix domain sockets are intentionally present to reduce transport overhead. they allow to exchange data between applications and thus related to application layer in [tcp/ip model][1]. There is no need for transport protocol to ensure ordering, reliability or flow control. you do not need network access layer as recipient of a message transfer is a process in the same machine.