In Multi-hop Wireless Networks (MWNs), the end-to-end performance degrades exponentially with hop counts and the degree of traffic aggregation at each hop. Fair allocation of bandwidth among nodes is one of the challenging problems in multi-hop wireless networks. The IEEE 802.11 Distributed Coordination Function (DCF) standard stipulates long-term equalization of throughput among stations by giving the same number of transmission opportunities regardless of their individual bit rates. A transmission between two nodes is affected by three main factors: i) its distance from the gateway, ii) number of nodes interfering with it and iii) its traffic load. This paper presents a Fair Channel Assignment Algorithm (FCAA) that increases fairness and throughput and decreases delay in a multi-hop wireless networks. FCAA starts by constructing an interference graph from the multi-hop wireless network. From the generated interference graph, it builds a matrix of all noninterfering nodes in the wireless network. Last, FCAA uses the generated matrix in addition of nodes individual traffic load to generate various sets of nodes. Nodes belonging to the same set are later assigned distinct nonoverlapping channels to transmit their packets. We show that FCAA maximizes fairness and individual nodes throughput. In addition, it increases the overall network throughput and decreases delay.