论文部分内容阅读
随着网络技术的发展,人们面对的将不只是简单的点到点之间的文本信息传送,而是大量的视频、音频等多媒体信息的传送。会议电视、分布式处理等,都是需要把信息由一点同时向多点进行传送的问题,多点通信即multicast是网络支持多媒体业务的关键技术之一。本文在简要的介绍了多点通信中的不同的选路准则及相关的几种算法之后,分析了其局限性,并提出了两种高效的组播树算法。 第一种是在MPH(Minimum Path Cost Heuristic)算法的基础上,引入准最短路径和准最短距离的概念,改变了判断加入节点的方法,每次把准最短距离最小的端节点加入到组播树中,得到了一种新的MST(Multicast Steiner Tree)算法:SMPH算法(Semi-Minimum Path Cost Heuristic)。一个端节点到组播树的最短距离是指这个端节点到组播树的各节点中距离最小的一个,每次找最短距离最小的节点时,所需比较的次数太多,本文在这一点上做了改进,引入了准最短路径和准最短距离的概念,即到组播树中端节点的距离最短的那条路径,这样只需记录每个尚未加入的端节点到组播树的准最短路径的长度,每次加入一个点以后,只需把这个点到每个尚未加入的端节点的距离与这些点的准最短距离比较即可更新这些端节点的准最短距离,并找出其中最小的一个,显然大大减少了比较次数,从而提高了算法的效率,同时所得到的组播树的总费用与MPH算法的基本一致(平均高出2.45‰)。 第二种算法是基于堆的组播树算法。它的基本思想是先把端节点建成一个堆,每次把堆顶元素加入到组播树中,用堆顶元素更新其儿子的信息,并重建堆。在随机网络模型的基础上,我们进一步进行了仿真。仿真结果表明:SMPH在付出空间代价的前提下,所得到的组播树的总费用与MPH算法基本一致,但是要速度快的多;基于堆的组播树算法所得到的组播树的总费用略高于MPH和SMPH算法,但是速度快且很容易实现节点的动态加入和删除。与其他组播树生成算法相比,两种算法都是计算速度很快的算法。最后,在附录中提出了一种只用加法和移位实现的二维图形的旋转算法。