I'm a newbie to networking and I wonder what are the reasons for ADSL to use ATM instead of Ethernet ?
According to the German Wikipedia the bit rates used in the time when ADSL was invented was the reason:
At that time the backbones of the telephone and internet providers operated at 1-40 MBit/s while today rates above 10 GBit/s are used.
At 2 MBit/s a packet of 1000 bytes length would take 4ms time for transmission; at 1 MBit/s a packet of 1500 bytes would take 12ms.
Because the optical fiber is blocked during this time no other data or voice can be transmitted for this time.
For voice telephony this means that voice will be delayed up to 12ms which seems to be too long for voice telephony.
Therefore shorter "packets" had to be used to ensure that voice packets are not delayed too much. ATM uses 53 bytes.
But, it doesn't exactly explain why ADSL ... uses ATM.
It would of course be possible to send Ethernet frames via ADSL and to split these frames into ATM cells at the provider's "router" (I don't know if "router" is the correct word here).
However this would make the provider's router more complicated: If ATM is already used at the customer's home the router simply has to route cells; it does not have to convert Ethernet to ATM and vice versa.
ADSL uses ATM to transport PPP frames which carry IP packets. You could ask why ADSL does not use ATM to transport Ethernet frames instead of PPP frames.
However before ADSL was introduced analogue modems were used. Analogue modems use PPP frames, not Ethernet frames.
So PPP was the de-facto standard data format for transferring data between the customer and the internet while Ethernet was rarely used; most PCs did not even have a network card in the 1990s!
Changing the protocol later on would mean: Develop new devices and throw away the old ones. Therefore this change was not made.