Communication concentrators perform the basic network function of merging many input flows into a single output flow. This requires formating the data and encoding side information about when messages start, what their lengths are and what their origins and destinations are. This thesis examines efficient ways of performing these functions, the objective being to minimize the average message delay, or some other queueing theoretic quantity, like the probability of buffer overflow. The work is divided in four parts; (1) encoding of the data; (2) encoding of message lengths; (3) encoding of message starting times; (4) encoding of message origins and destinations. With respect to data encoding, an algorithm is given to construct a prefix condition code that minimizes the probability of buffer overflow. Next a theory of variable length flags is developed and applied to the encoding of message lengths. For concentrators with synchronous output streams, it is shown that the concept of average number of protocol bits per message is meaningless. Thus, in order to analyze the encoding of message starting times, a class of flag strategies is considered in which there is a tradeoff between delay and low priority traffic.