Channel-Access And Routing Protocols To Utilize Multiple Heterogeneous Channels For Ad Hoc Networks