The detection of errors requires that redundant information be included in the data stream that can be used to detect errors. To use this redundant information, the receiving end of the connection must know what collection of bits the redundant information is associated with. Packets provide natural units to associate with error checks.
If a channel is to be shared by taking turns, groups of bits have to be packaged in such a way that some form of "address label" can be associated with the groups so that the receiver will know to which process they should be delivered.
In some cases the "direct" connection between two machines is not really very direct. For example, in a network based on radio transmission, each message broadcast can he heard by many machines. It is still appropriate to view such a connection as direct because there is no need to perform any routing to find a path through one or more intermediaries from the sender to the receiver. All communications is "direct".
To make such communications possible, data bits must be grouped into messages and an address field indicating the destination machine must be included. (Obviously, this is similar to the TDM issue).