What does a "unit of flow control in the network mean"? Is this measured in bits/bytes?
@captainFlint A "unit of flow control" means whatever the minimal granularity for flow control is in the network. You can sure measure it in terms of bits/bytes, but it might be more helpful to think of it as just a "unit" of information.
If we use the snail mail analogy here, a "flit" would be a piece of postcard / letter / package, because that's the smallest thing that the postal system can route. Does this make it clear?
A message can be split into many packets, and a packet can be split into many flits. Why do we need this two level granularity? Why don't we simply make packets smaller as the minimum granularity of routing?
@qqkk The reason is that we want to encapsulate different logic in different "layers" of routing protocols. For example, an IP packet contains headers / information that allows the packet to be routed according to the IP protocol. However, the packet might be sent in smaller flits between routers, as the routers have their own logic and hardware characteristics that allow it to forward packets of a certain size regardless of the overlaying IP routing that is occurring (in fact, a given router might not be capable of sending an entire IP packet at once, and may have to send flits according to its design / capabilities).
This same intuition applies to on-chip networks, where the size and composition of a packet might be different than the flits that are sent between switches.