A data transfer apparatus comprising: a virtual channel unit configured to time share a serial bus for a first virtual channel and a second virtual channel and include a buffering control unit (116, 117) configured to receive or send data via the first virtual channel and the second virtual channel, a first receive buffer or a first send buffer configured to store the data received or to be sent via the first virtual channel, respectively, and a second receive buffer or a second send buffer configured to store the data received or to be sent via the second virtual channel, respectively; characterized in that: the data transfer apparatus further comprises a switching unit configured to control storing the data received or to be sent via the first virtual channel in the second receive buffer or the second send buffer when the buffering control unit (116, 117) receives or sends the data from or to another data transfer apparatus which is configured to use only the first virtual channel and the total capacity of the first receive buffer or the first send buffer provided to store the data is smaller than the total capacity of the second receive buffer or the second send buffer provided to store the data, respectively; the switching unit comprises selectors (118 to 120) and a register; the buffering control unit (116, 117) comprises a first buffering control unit configured to receive or send data of the first virtual channel and the second virtual channel via the selectors (118 to 120), and a second buffering control unit configured to receive and send data of the second virtual channel via the selectors (118 to 120); and the register is configured to output a select signal in accordance with information set in the register to the selectors (118 to 120) to select the respective receive buffer based on whether said another data transfer apparatus is configured to use only the first virtual channel and on the result of comparing said total capacities. a virtual channel unit configured to time share a serial bus for a first virtual channel and a second virtual channel and include a buffering control unit (116, 117) configured to receive or send data via the first virtual channel and the second virtual channel, a first receive buffer or a first send buffer configured to store the data received or to be sent via the first virtual channel, respectively, and a second receive buffer or a second send buffer configured to store the data received or to be sent via the second virtual channel, respectively; characterized in that: the data transfer apparatus further comprises a switching unit configured to control storing the data received or to be sent via the first virtual channel in the second receive buffer or the second send buffer when the buffering control unit (116, 117) receives or sends the data from or to another data transfer apparatus which is configured to use only the first virtual channel and the total capacity of the first receive buffer or the first send buffer provided to store the data is smaller than the total capacity of the second receive buffer or the second send buffer provided to store the data, respectively; the switching unit comprises selectors (118 to 120) and a register; the buffering control unit (116, 117) comprises a first buffering control unit configured to receive or send data of the first virtual channel and the second virtual channel via the selectors (118 to 120), and a second buffering control unit configured to receive and send data of the second virtual channel via the selectors (118 to 120); and the register is configured to output a select signal in accordance with information set in the register to the selectors (118 to 120) to select the respective receive buffer based on whether said another data transfer apparatus is configured to use only the first virtual channel and on the result of comparing said total capacities. the data transfer apparatus further comprises a switching unit configured to control storing the data received or to be sent via the first virtual channel in the second receive buffer or the second send buffer when the buffering control unit (116, 117) receives or sends the data from or to another data transfer apparatus which is configured to use only the first virtual channel and the total capacity of the first receive buffer or the first send buffer provided to store the data is smaller than the total capacity of the second receive buffer or the second send buffer provided to store the data, respectively; the switching unit comprises selectors (118 to 120) and a register; the buffering control unit (116, 117) comprises a first buffering control unit configured to receive or send data of the first virtual channel and the second virtual channel via the selectors (118 to 120), and a second buffering control unit configured to receive and send data of the second virtual channel via the selectors (118 to 120); and the register is configured to output a select signal in accordance with information set in the register to the selectors (118 to 120) to select the respective receive buffer based on whether said another data transfer apparatus is configured to use only the first virtual channel and on the result of comparing said total capacities.