I'm currently learning about the OSI model and the TCP/IP models, and I was wondering: Why in the TCP/IP model the physical layer and the data link layer are combined?
I'll state how I understand the division between the two in the OSI model:
Physical layer
The physical layer is responsible for transmission and reception of raw bits between a device and a physical medium. So this layer is basically responsible for transforming digital 1's and 0's to signals depending on the physical medium such as electrical, optical or radio signals. On the receiving end, it is responsible for doing the opposite - translate the physical signals into digital ones. This is all done by hardware components - NICs, cables, etc. The specifications in this layer will include voltage levels, wave frequencies, etc.
Data link layer
Everywhere I read, the function of the data link layer was phrased as "the transfer of data between nodes on the same network segment" or something similar. That confuses me a little bit since the physical layer puts the bits on the wire and collects it from there, which is effectively transferring data between nodes on the same network (please help me cut this more clear if you can). Anyway, from what I understand (please confirm my understanding or correct me) is that this layer supersedes the function of the physical layer. While the function of the physical layer is merely to translate digital to whatever, the duty of this layer is to make sure those bits arrive to their destination. This may (but not must) include error checking and correction, Media Access Control - which means synchronizing the different devices that wants to use the medium, addressing - so that frames will go to the desired-by-the-network-layer destination, and maybe other things.
The data link layer core operation is to encapsulate network packets into frames which includes a checksum, source and destination address and some more data. These frames are used in order to achieve the above goals.
All this is done in software - software that partially runs in the OS as device driver of the NIC, and partially on the NIC itself. Protocols in this layer defines the structure of frames, how Media Access Control is managed, error detection and correction, etc.
So now to the question - if these are 2 separate functions, why is this division missing from the TCP/IP model? I can understand that in the TCP/IP model there's no session and presentation layers, since there is no such functionality on its own, its all done by the application layer. But here with physical and data link, surely these are 2 separate functions, aren't they?