When more than one client wants to use a resource at once we have contention.
Real queues are used in hardware, either in FIFO memories or by flow control applying back pressure on the source to stall it until the contended resource is available. An arbiter allocates a resource to one client at a time.
Contention can be modelled using real or virtual queues:
Delay estimates can be based on dynamic measurements of utilisation at the contention point, in terms of transactions per millisecond and a suitable formula, such as 1/(1-p) that models the queuing delay in terms of the utilisation.