Adapting sensing and transmission times to improve secondary user throughput in cognitive radio ad hoc networks