I have a question about the connection/application between the ethernet controller and PHY/SFP modules. Actually, there're so many scenarios for building up a NIC card, which makes me confused. For example, we can use an ethernet controller with the following connections:
controller ==> PHY chip ==> RJ45 connector ==> copper cable
controller ==> PHY chip ==> SFP module ==> fiber cable
controller ==> SFP module without PHY ==> fiber cable
controller ==> SFP module with PHY ==>copper cable
....
And the controller is the same, with the same serdes lanes. I don't quite understand why there are so many combinations to built up an ethernet link. Can someone give me some hints about the history of these setups? I can get the idea that the controller is working as MAC layer and PHY chip as physical layer, but the SFP thing really confuses me.
Another question is that, if the controller's serdes directly connected to SFP module (without PHY on the module), which protocol/interface will be used between controller and SFP module? If the SFP module only does the electrical-optical conversion, what data format is transmitted out? Since there is no PHY chip to deal with the physical layer stuff, can this communication be considered as data link layer communication?
About the controller, since it has the ability to directly interact with the SFP module, why the PHY chip vendor still need to implement the function to interface with SFP module?