The index coding problem is a multiple unicast wireline communication network where the network is represented by a directed graph having exactly one link with finite capacity (also known as the bottleneck link). There are K independent sources which share the ingress of this bottleneck link. Correspondingly there are K destinations which are on the receiving end of the bottleneck link, with each destination intending to decode the message of one (unique) corresponding source. Each destination can have apriori side-information of a (different) subset of the original source messages. In this paper, we study the capacity of such a network from the perspective of interference alignment, and derive information theoretically optimal schemes for a class of networks. In our first main result, we identify the set of graphs where each user can achieve half rate in the index coding problem. In a second result, we derive the capacity for a class of symmetric index coding networks.