软件定义网络(software defined network,SDN)是一种能将基础设备的网络控制功能分离并集中地部署到控制器中的网络架构.实际的Hadoop系统中,存在一个最小化作业完成时间的NP完全问题.在Hadoop中引入SDN,利用SDN的网络控制能力,将网络中的可用剩余带宽作为任务调度的重要参数,并提出任务调度算法RBA(residual bandwidth based algorithm).使用RBA可获得任务的近似最优分配方案,从而实现作业完成时间的最小化.通过仿真实验验证RBA在作业完成时间、任务数据本地性及计算时间方面的性能.实验结果表明,总体上RBA较HDS、BAR、BASS算法是更优的.