We consider a finite-buffer queue where arrivals occur according to a batch Markovian arrival process (BMAP), and there are two servers present in the system. At the beginning of a busy period, the low performance server serves till queue length reaches a critical level b (<= N), and when queue length is greater than or equal to b, the high performance server starts working. High performance server serves till queue length drops down to a satisfactory level a(<b) and then low performance server begins to serve again, and the process continues in this manner. The analysis has been carried out using a combination of embedded Markov chain and supplementary variable method. We obtain queue length distributions at pre-arrival-, arbitrary- and post-departure-epochs, and some important performance measures, such as probability of loss for the first-, an arbitrary- and the last-customer of a batch, mean queue length and mean waiting time. The total expected cost function per unit time is derived in order to determine locally optimal values for N, a and b at a minimum cost. Both partial- and total-batch rejection strategies have been analyzed. Also, we investigate the corresponding BMAP/G-G/1/queue using matrix-analytic- and supplementary variable-method. We calculate previously described probabilities with performance measures for infinite-buffer model as well. In the end, some numerical results have been presented to show the effect of model parameters on the performance measures. Copyright (c) 2014 John Wiley & Sons, Ltd.