E.g. is there some scheduling going on at the hardware level that sends whole packets one after another in bit-streams to prevent individual ones being broken up, or if they are split up while being transferred over a network (into odd bits here and there) how would they be reconstructed?
3 Answers
Start with the 7 osi layers this will give you a understanding of how data travels between applications layers.
As a summary, each tcp packet contains a sequence number, at the receiving end they are all put together, and if one is missing it is requested from the source.
EDIT: Q - The actual packet at layer 1.
All modern networks use full duplex ethernet, a single IP packet is sent in one go at the maximum transmission speed of the physical cable e.g. 1Gbits/s.
Data is interleaved at the packet level, not at the bit level. Thus packet 1, normally <1500bytes * 8bit = 12kbit is sent in one burst. (On Gigabit link this takes 12k/1Gb/s= 12uS, on 256kBit link 47mS)
This is also why routers and switches have buffers to hold packets until they can be transmitted out congested ports.
At slower link speeds you have to contend with serialization delay for voice traffic, even if the VoiP packet is marked as high priority if it arrives at a link that just started sending another packet it has to wait for the packet to leave before being rushed out the interface.
On really slow serial links <1Mbit running ppp, link fragmentation can be employed to ensure the serialization delay does not cause to much jitter for VoiP traffic stuck behind a big packet being transmitted.
-
I mean an individual packet at the hardware level, I've edited the question to hopefully make this clearer Commented Jul 12, 2015 at 16:29
-
Many people like to reserve the word "packet" to refer to the layer 3 protocol data unit. Ethernet PDUs are considered layer 2 PDUs and are usually called "frames". While layer 1 doesn't always specify a PDU at all, sometimes a "bit", "symbol", or "stream" is considered a layer 1 PDU. While people usually understand what is meant when "packet" is used for layers other than 3, using the standard terms helps keep things clear. See: en.wikipedia.org/wiki/Protocol_data_unit Commented Jul 13, 2015 at 12:00
First, packets are anything but physical ;)
I assume you actually mean Ethernet frames (not packets) A simplified explanation: the ethernet hardware receives an entire frame in a queue structure, fetches one byte at a time, and clocks it out the interface one bit at a time. Then it fetches the next byte, and so on until the frame is complete. Because the ethernet hardware operates on one frame at a time, there's no possibility of interleaving two partial frames.
If I understand correctly, the so called "bits" you are talking about, are nothing more than an electrical signal. Meaning, when the data is sent through the cables, it is merely a signal, then at the receiving end it is read (in a way that i don't quite understand myself).