In this layer we study the low-level hardware primitives for network communication. This communication may be circuit switched or packet-switched. Circuit-switched networks operate by forming a dedicated connection (circuit) between the two points. While a circuit is in place, no other communication can take place between the channels involved in the communication. The US telephone system uses such communication between two telephones. Packet-switched networks operate by dividing the conversation between two parties into packets, and multiplexing the packets of different conversations onto the communication channels. A packet, typically, contains only a few hundred bytes of data that includes header information that identifies the sender and receiver.
Each approach has its advantages. Circuit switching guarantees a constant communication rate: once the circuit is established, no other network activity will decrease the communication rate. This is particularly important for audio/video communication. One disadvantage is throughput: no one else can use the circuit during a `lull' in the conversation between the two parties. Therefore circuit switching is not a very popular method for computer communication and packet switching is always preferred since it provides better utilization of the channel bandwidth, which is specially important for asynchronous transfer of bulk data. Since a channel bandwidth, typically, is fairly high, sharing of its does not present many problems, specially for traditional data transfer applications. For multimedia communication, packet-switched networks have been designed that try to reserve part of the network bandwith for some communication channels. In the remainder of the discussion we shall assume packet switching.