结构化网络

2024-07-23

结构化网络(共12篇)

结构化网络 篇1

0引言

随着数据库技术的不断发展及数据库管理系统的广泛应用, 数据库中存储的数据量急剧增大, 如何从这海量的数据中找出人们最感兴趣的信息, 为人们作出有效决策服务, 成为了一项重要的研究课题。Skyline计算[1,2,3,5,6,8,11]以其在多目标决策、数据挖掘、数据库可视化等方面的重要性引起了越来越多研究者的关注。一个多维数据库的skyline, 是此数据库上不被其它任何数据点支配的点所组成的集合。数据点p支配点q, 当且仅当p在任一维上的取值都不比q差, 且至少在一维上比q更好。这也就意味着, 任何一个在所有维上都单调的函数, 对p点的打分都优于对q点的打分。

随着网络技术的发展和数据规模的急剧增大, 对等网络 (P2P) 作为一种分布式信息共享与搜索的平台吸引到越来越多人的注意。但直到不久前, skyline计算的研究还局限在集中式数据库上。由于对等网络对网络带宽、节点访问量等的特殊要求, 集中式skyline算法并不能有效地直接运用于对等网络上。如何设计出符合对等网络特点的skyline算法也成为了一个重要的研究课题。然而, 迄今为止, 国内外只有三篇文章[9,10,11]在这个课题上作出了初步探索。这些文章提出的算法或者是专门为子空间上skyline计算设计的[9], 或者是针对特殊的对等网络协议CAN[11]或BATON[10]而不能应用到其它协议上。但是, 除了CAN和BATON, 还有一些对等网络协议具有重要的研究和应用价值。例如Chord[7], 以其简单灵巧的设计和良好的性能在对等网络研究领域中一直获得广泛的关注。如何处理这些重要的对等网络上的skyline计算, 还有待进一步深入的研究。

在这篇文章里, 我们提出了一种新的、基于Chord网络的skyline算法。这个算法在处理受约束的skyline查询 (即指定了数据取值范围的查询) 和普通的针对数据全空间的skyline查询时都表现出良好的性能, 且达到了对等网络对skyline算法的各种要求:占用较少的网络带宽、访问较少网络节点、具有良好的渐进性并保持节点间负载的均衡。理论分析和实验结果均证明它是一个高效、可扩展的算法。

1相关工作

提出一种基于对等网络Chord进行skyline计算的算法。接下来我们将分别就Chord和skyline计算的相关研究进行简单评述。

1.1Chord

对等网络是无集中控制的分布式系统。Chord[7]作为众多对等网络协议中的一种, 以其灵巧的设计、准确可靠的特点和良好的性能获得了广泛的研究和应用。Chord使用一个简单的环形结构, 为每一个节点和每一个关键字分配[0, 2m-1]之间的一个m位标识符, 组建一个环状标识空间。一个节点的标识符是将其IP哈希到[0, 2m-1]上得到的, 而一个关键字的标识符是此关键字的键值的哈希值。每个关键字被映射到离它最近且标识符不比它大的节点上。每个节点维护一个指针表 (finger table) , 存储离它距离分别为1, 2, …, 2m-1, 依次折半共m个节点的信息。Chord 可以确保路由在标识空间中单向靠近目标结点而且不会越过, 并且保证路由在O ( LogN ) 步内完成。

1.2Skyline计算

集中式skyline计算作为早期关注的焦点得到了较深入成熟的研究, 块嵌套循环算法 (BNL) [2]、排序过滤算法 (SFS) [3]、分治法D&C[2]、位图法 (bitmap) [8]、索引法 (index) [8]和最近邻算法 (NN) [5]等等都是著名的集中式skyline计算算法。分枝界限算法 (BBS) [6]基于最近邻搜索渐进地输出skyline点, 是当前公认最优的集中式skyline算法。

文献[11]是第一篇对对等网络 (P2P network) 上的skyline计算进行研究的文章。它基于对等网络的一种特殊协议——CAN, 通过动态地为区域编号标示出区域间的依赖关系, 按此依赖关系并行地传递和执行skyline查询。文献[10]提出了基于树型对等网络BATON的skyline计算算法。它将整个数据空间适应性地划分为对应于网络节点的各个区域, skyline查询被按照区域依赖关系发送到可能包含skyline点的节点上。而文献[9]对支配的概念作了扩展, 提出了扩充的skyline集, 来定义所有可能在任一个子空间skyline查询中有用的点所组成的集合, 并设计出一个基于阈值和超级节点的skyline算法。

2基于结构化对等网络Chord的skyline计算算法

在这一部分里, 我们首先阐述对等网络上的skyline计算的定义和目标。然后, 我们将提出一个新的基于对等网络Chord的skyline计算算法, 并通过理论方法分析它的性能。

2.1问题定义

假设DB是一个d维的数据库, 其中的每一个数据点p用向量 (p.a1, p.a2, ..., p.ad) 表示, 且0≤p.ai≤1 (i∈[1, d]) 。DB被水平划分到一个Chord网络的N (N≤ 2m, m > 0) 个节点上。标识符为i的节点被标记为Pi, 而P0, …, P2m-1上的数据划分分别被表示为DB0, …, DB2m-1 (注意某些Pi可能在某一时刻不在网络中, 对应的数据划分DBi的大小为0) 。 新的数据随时可能被插入到DB中, 已有的数据也可能被删除, 因而不可能为每个查询预先计算出结果。

对于DB中的任意两点pq, 点p支配点q, 当且仅当对任意一维i (i∈[1, d]) , p.aiq.ai, 且至少存在某一维j (j∈[1, d]) , 使得p.aj < q.aj。即p在任一维上的取值都不比q差, 且至少在一维上比q更好。对于Pi上的任一个点p, pDBi的本地skyline点, 当且仅当p不被DBi中其它任何点支配。同样的, p是全局skyline点, 当且仅当p不被DB中其它任何点支配。

一个全局 (不受限) 的skyline查询的目标是找到DB0, DB1, ..., DB2m-1中所有的全局skyline点;一个受限的skyline查询的目标是找到在某个特定的查询空间, 即超立方体Qr中的所有全局skyline点。

一个设计良好的对等网络上的skyline计算算法应达到以下四个目标:1) 最小化网络通信开销。通信开销是对等网络上算法衡量的普遍标准, 它不仅决定了网络带宽占用量, 还很大程度上决定了查询的响应时间。2) 最小化平均节点访问量。算法应在尽可能少的节点参与计算的情况下准确计算出skyline, 避免对整个网络的彻底搜索。3) 渐进性。算法应快速地计算出前几个skyline点, 并逐渐地把更多结果返回给用户。4) 负载均衡。保持负载均衡是对等网络上算法的一个重要目标, 负载应被尽量均匀地划分到网络各个节点上。

2.2基本算法

不难发现, 任何一个全局skyline点必属于某一个本地skyline集, 也就是说, 所有本地skyline集的并集是全局skyline的一个扩展集。基于这一点, 我们可以获得一个简单的计算对等网络上skyline的基本算法。它包含两个步骤: (1) 每个节点分别使用某种集中式skyline算法 (如BNL[2]) 计算它的本地skyline集; (2) 某个节点 (如查询的发起者) 扮演起协调者的角色, 将所有节点的本地skyline集收集到一起, 将它们合并并去除其中不符合要求的点, 得到全局skyline集。

这个基本算法有一个重要的缺陷:它可能在节点间传输大量的无用信息, 导致很高的网络带宽开销。事实上, 本地skyline集的并集可能远远大于全局skyline的大小, 将这个并集传给协调者将致使许多非全局skyline点被传输, 引起了不必要的网络开销。这个基本算法的另一个缺点在于它缺少渐进性, 所有的skyline点都要在计算结束以后才能一起被返回给用户。除此以外, 对于每一个查询, 基本算法都需要访问所有的节点才能获取到所需的全部信息。这样对网络的彻底搜索使算法的效率不高, 且难以扩展到较大型的网络上。

2.3基于Chord的skyline计算

在这个部分里, 我们定义一种新的数据映射的方法, 将每个数据映射为它在Chord上的标识符。然后, 我们将详细介绍一种新的基于Chord的skyline算法。

2.3.1 数据映射

为了将多维数据点映射到Chord网络的一维标识符, 我们首先选择一个在所有维上都单调的函数F (·) , 称之为优先函数。每一个数据点p都被F (·) 映射到一个一维值F (p) 上, 并把这个值作为点p的关键字, 标记为Kp。为简单起见, 在以后的讨论中我们选择一个简单的优先函数F (p) =∑i=0dp.ai。关键字Kp就可以用如下的线性变换转换为它在Chord上的标识符:

ΙD (Κp) =|Κp-ΚminΚmax-Κmin×2m| (1)

这里[Kmin, Kmax]是关键字的值域。显然, ID (Kp) 是一个保序函数, 关键字小的点将被哈希到较小的值, 根据Chord协议, 也将被映射到标识符较小的节点。

图1是数据映射的一个例子。这个Chord网络上共有3个节点, 且m=3。整个数据集的5个数据分别被映射到各个节点上。Kmin=0, Kmax=2, 按照公式 (1) , 点 (0.2, 0.04) 被映射到P0, 点 (0.1, 0.45) 被映射到P1, 其它三个点则被映射到P3上。

2.3.2 ChordSky算法

首先, 我们介绍文献[3]中的一个重要定理:

定理1 按照任何单调函数对数据点所作的全序排序, 都是按skyline偏序支配关系所作的拓扑排序。

也即是说, 将数据点全部按单调函数排序以后, 任何一个排在前面的点都不可能被排在后面的点所支配。回忆我们使用了一个单调函数的值作为数据点的关键字。根据2.3.1中描述的映射方法, 对于任何0 ≤ i, j < N, Pi中的关键字必定比Pj中的关键字小。因此, Pi中的任何数据点都绝不会被它后面 (标识符比它大) 的节点上存储的点所支配。也即是说:

引理1 Chord环中的任何节点都只需要参考它前面的节点, 就能够决定它的本地skyline点是否属于全局skyline。

而对于一个受限的skyline查询, 假设l (l.a1, l.a2, …, l.ad) , h (h.a1, h.a2, …, h.ad) 分别是查询空间的左下和右上角的点, 则没有关键值小于F (l) 或大于F (h) 的点属于全局skyline。由此, 我们得到另一条引理:

引理2 对于一个关键字范围为[Keyi, low, Keyi, high]的节点, 当且仅当skyline查询的关键字范围[F (l) , F (h) ]与之相交时需要访问它来计算skyline。

基于引理1和引理2, 我们提出了在Chord网络上进行skyline计算的新算法, 称之为ChordSky算法。算法1是此算法的伪码描述。当一个查询Q在某个节点上发出时, 按照Chord协议的路由机制将它路由到关键字范围与[F (l) , F (h) ]相交且标识符最小的节点Pi上 (全局skyline的查询范围是[0, d]) 。同时初始化一个空结果集Ssky, 以备存储计算的最终结果, 并将它传到Pi上。在接收到QSsky以后, Pi上的SkyComputation (Q, Ssky) 过程被触发。SkyComputation (Q, Ssky) 首先检查PiQr的关键字范围是否相交, 如果不相交, 则搜索已经超出了查询范围, 计算结束。否则, Pi根据Qr计算出本地skyline集Si, 用Ssky过滤掉Si中被支配的点, 并将剩余的Si中的点添加到Ssky。然后, Pi将查询Q和新的Ssky传递给它的后继节点Pj, 并触发Pj上的SkyComputation (Q, Ssky) 过程。为了将算法解释得更加清晰, 下面我们给出了一个具体的例子:

例1 我们仍然考虑图1中的Chord网络和数据集。基于2.3.1中提出来的数据映射方法, P0, P1和P3的关键字范围分别是[0, 0.25) , [0.25, 0.75) 和[0.75, 2]。一个受限查询Q被发出, 它的查询空间的左下角点为l (0.1, 0.4) , 右上角点为h (0.4, 0.9) 。因此, 查询Q的关键字范围是[F (l) , F (h) ]= [0.5, 1.3], 它被路由到第一个与它相交的节点P1上。在P1上完成计算后, Ssky = { (0.1, 0.45) }。然后, P1将QSsky传递给它的后继P3, 并触发P3上的处理进程。P3计算它的本地skyline, 用Ssky去除其中的 (0.3, 0.8) 和 (0.35, 0.6) 点, 并将剩余的点 (0.4, 0.4) 加到Ssky中。Skyline计算完成, 最终Ssky = { (0.1, 0.45) , (0.4, 0.4) }。

算法1ChordSky

Procedure ChordSky (Q)

1: initialize an empty set Ssky;

2: route Q and Ssky to Pi s.t.i is the first ID satisfying

Keyi-1, high ≤F (l) and Keyi, low =F (l)

3: Pi.SkyComputation (Q, Ssky) ;

End Procedure

Procedure SkyComputation (Q, Ssky)

1: if Keyi, low > F (h) or Keyi, high ≤F (l) then

2: return;

3: else

4: initialize an empty set Si;

5: Si←Pi.LocalSkyline (Q) ;

6: eliminates points in Si that are dominated by points in Ssky;

7: Ssky←Si∪Ssky;

8: if Keyi, high ≤F (h) then

9: Pi.successor.SkyComputation (Q, Ssky) ;

10: end if

11: end if

End Procedure

2.3.3 算法分析

由引理1和引理2很容易验证算法的正确性与渐进性。算法沿着Chord环传递查询和已求出的skyline数据集Ssky, 每当一个节点收到查询时, 它也获得了它所需要的前驱节点处的信息, 也即是说, 所有可能支配它所存储的点的skyline集。因此, 当一个节点处理完以后, 它新加到Ssky中的每一个点都必然是全局skyline中的点, 可以立即被输出给用户, 这就保证了算法渐进的特性。此外, 由于查询将被传递到所有与查询空间相交的节点, 每一个全局skyline点都必然被访问到。在计算结束时, 有且仅有所有的全局skyline点被输出, 确保了算法的正确性。

同时, 算法最小化了需要访问的节点数。按照基本算法处理查询将需访问网络中的所有节点, 而ChordSky算法仅需要访问那些可能含有全局skyline点的节点 (引理2) 就可以获取正确完整的答案, 保证了访问量的最小化。

负载均衡作为对等网络的一个重要方面得到了广泛的关注[4]。我们可以从三个方面提高负载的均衡度: (1) 将各个节点的关键字范围重新分配, 比如让原本较热门的节点接受较小范围的关键字; (2) 使用虚拟主机[4]的方式让强大的节点负载更多地工作; (3) 使用范围复制的方法, 像文献[11]中的动态区域复制方法一样, 把工作量从负荷重的节点转移到较为空闲的节点。

3性能评估

下面, 我们将用实验验证算法的性能。我们实现了基本算法和ChordSky算法, 并在一台Intel Pentium 4 2.8GHz CPU, 内存512M, 硬盘40G的单机上进行了模拟。我们使用包含1000, 000个均匀分布点的两维集合, 在网络大小 (在线节点数) 从100到1000的范围内测试各种受限/不受限的skyline查询。每个查询的范围都是随机生成的。我们按每一组参数进行10次实验, 取其结果的平均值作为这组参数下的结果。

我们采用2.1部分中的四个目标为衡量标准。因为算法渐进性和负载均衡两个方面的性能已经在2.3.3部分中得到了详细的论证, 在这一部分里, 我们集中讨论网络的带宽消耗量和节点访问量。由于传输数据的数量极大地决定了网络带宽的消耗量, 对每一个查询而言, 我们用平均每个节点传送的数据点的个数作为带宽消耗的衡量标准。对于节点访问量, 我们比较两种算法在每个查询上平均访问节点数占总节点数的百分比。

3.1带宽消耗

为了研究两种算法在带宽消耗上的性能, 我们使测试网络的大小从100个节点到1000个节点变化。图2是节点数量变化时, ChordSky算法比基本算法减小的带宽消耗比。这个减小的带宽消耗比是按 (Bnaive-B) /Bnaive*100%来计算的, 其中BnaiveB分别是基本算法和ChordSky算法中每个节点平均传递的数据点的个数。由实验结果可知, 无论网络大小如何变化, ChordSky算法始终比基本算法减小了大约60%的带宽消耗, 展示出非常好的性能。

3.2节点访问量

为了回答一个skyline查询, 基本算法必须访问所有的节点才能避免结果出现错误或遗漏。而受益于新的数据映射方式, ChordSky算法仅需要访问那些与查询范围相交的节点, 最小化了节点访问量。图3展示了ChordSky算法的平均节点访问量。如图3所示, 在所有的查询中, 有90%的查询是只需访问60%以内的节点即可完成。而超过70%的查询只需访问不到40%的节点。这一较基本算法节点访问量的大幅度减小也确保了ChordSky算法良好的可扩展性。

4总结

在这篇文章里, 我们对对等网络上有效计算skyline的问题进行了研究。基于重要的对等网络结构Chord, 我们提出了一种新的把多维数据映射为一维标识符的方法, 并提出了ChordSky算法将查询沿着Chord环向后传递, 渐进地处理数据点并输出skyline。该算法最小化了需要访问的节点个数, 极大地减小了网络带宽的消耗量, 并提供了保持节点负载均衡的方法。理论分析和实验结果都证明, ChordSky算法在有效性、渐进性和可扩展性三方面的性能都远远超过了基本算法。将来, 我们还将进一步探索对等网络上skyline的动态更新等问题。

参考文献

[1] Balke W T , Guntzer U, Zheng J X.Efficient distributed skylining for web information systems.In Proc.of EDBT, 2004:256-273.

[2] Borzsonyi S, Kossmann D, Stocker K.The skyline operator.In Proc.of ICDE, 2001:421-430.

[3]Chomicki J, Godfrey P, Gryz J.Skyline with presorting.In Proc.of IC-DE, 2003:717-816.

[4] Godfrey B, Lakshminarayanan K, Surana S, Karp R M, Stoica I.Load balancing in dynamic structured p2p systems.In INFOCOM, 2004.

[5]Kossmann D, Ramsak F, Rost S.Shooting stars in the sky:An online al-gorithm for skyline queries.In Proc.of VLDB, 2002:275-286.

[6]Papadias D, Tao Y, Fu G.An optimal and progressive algorithm for sky-line queries.In Proc.of SIGMOD, 2003:467-478.

[7]Stoica R Morris, Karger D R, Kaashoek MF, Balakrishnan H.Chord:Ascalable peer-to-peer lookup service for internet applications.In SIG-COMM, 2001:149-160.

[8] Tan K L, Eng P K, Ooi B C.Efficient progressive skyline computation.In Proc.of VLDB, 2001:301-310.

[9] Vlachou C Doulkeridis, Kotidis Y, Vazirgiannis M.Skypeer:Efficient subspace skyline computation over distributed data.In Proc.of ICDE, 2007:416-425.

[10]Wang S, Ooi B C, Tung A K H, Xu L.Efficient skyline query process-ing on peer-to-peer networks.In Proc.of ICDE, 2007:1126-1135.

[11]Wu P, Zhang C, Feng Y.Parallelizing skyline queries for scalable distri-bution.In Proc.of EDBT, 2005:112-130.

结构化网络 篇2

总线形网络:是将所有电脑连接在一条线上,使用同轴电缆连接,就像一条线上栓着的几只蚂蚱,只适合使用在电脑不多的局域网上,因为电缆中的一段出了问题,其他电脑也无法接通,会导致整个网络瘫痪,

系统中要使用BNC接口网卡、BNC-T型接头、终结器和同轴细缆。

结构社会学和网络分析 篇3

【摘 要】随着社会的发展,社会结构也开始被人们重视,社会发展的同时也伴随着科学技术的突飞猛进。网络作为我们常常用到的信息传递工具,它和社会又会擦出哪些“火花”,二者之间有什么微妙的关系,都是我们的研究课题。本文针对结构社会的内容、特点和网络的定义与社会作用进行了阐述。

【关键词】结构 社会学 网络

一、何为社会结构

社会结构是一个术语,关于它却少有准确的定义。那么社会结构可以如何划分呢?我们所知的有社会的组织、群体、社区和制度这四种。社会结构还包括社会不同领域的划分,比如经济、政治、社会等多种因素。从另一方面讲,它又是对于社会不同阶级结构的称呼。当然中外对于它的界定也不尽相同,只不过欧美对于它的界定更加的抽象。并且社会结构又包含了多种多样的学科,例如人类、社会、心理等学科。人们也需要从它衍生或者影响的学科中,多角度地对它进行研究和讨论。当然社会结构又有不同的分层和主义,我们先从社会阶层方面进行阐述和理解。关于社会阶层,其实它是将人们按照不同的经济水平进行划分,将人们以此划分出了“三六九等”。当然这样也经常扩展到我们常说的社会不平等等类似的敏感话题,因为它涉及了社会、经济、政治等方面的不平等。其实对于社会阶层的划分也要依据相应的原则,其中有:它的划分不应只体现人们个体间的区别,更应该体现总体的特点;社会阶层也可以“遗传”;它具有普遍性,但不代表一成不变;它不光涉及社会问题,还涉及了人们的思想问题。上文提到社会结构还有主义方面的问题,那么就延伸出了结构主义,当然结构主义又分为主义前和主义后。经过不同时代的变革,不同的学者也提出了自己的真知灼见。在不同社会时期,不同的人探讨社会学一次又一次的有了新的发展。

二、网络社会学

互联网络遍布全球,使得我们的世界越来越“小”。当然在它飞速发展的时候,相关的问题也不断地被提出。人类社会的进化和网络社会的发展二者相融合,也就衍生出了新的事物。其中网络本身有自己的特性,那就是“适应性”。当然它也不仅仅是一个技术的定义,它还会对社会的现象和过程进行体现,所以我们也就需要把它加入到相应的社会学科中进行研究。那么它是如何产生的呢?工业革命中新技术的产生,对旧的社会制度、结构、人际关系、风俗等方面进行着冲击,所以一部分资产阶级就急于重建相关的理论与体系,使之适应社会的变化和发展。当然无论如何,其根本目标是促进人类、社会和自然与技术之间的协调发展,而非相互对立。网络的发展也强势地挤进人类社会发展中,人们对于它的运用和依赖,也使它成为人类社会、生存密不可分的一部分,当然相应的社会问题也逐渐显现出来,成为现代极具人气的研究课题之一。网络出现拥有自己的文化背景,也拥有自己的特征和核心,那么它的定义是什么,是人类创造的实现信息流动的一种技术工具,它也体现出了一系列的社会组织和运动规律。网络具有多角度、多方面的特征,所以我们也应该根据它的特点对它进行研究和把握。我们已知网络与社会密不可分,那么两者的关系又是什么呢?技术影响社会,社会反作用于技术。马克思、恩格斯都认为技术会对社会产生极大影响。当然网络对于社会的影响更多地体现在经济方面,经济全球化使全球的联系更加紧密,而网络作为翻开人类文化新篇章的重要一员,在经济全球化中做出更大的贡献,并且当代自然资源、社会基础设施等也开始向建设网络基础设施方面转化。

三、网络与结构社会学

我们关注经济,那么什么是网络经济呢?网络经济拥有效率高、成本低、传播快、技术高的特点,但是它却又非常的脆弱。这也就产生了新的矛盾,但是矛盾又促进了社会的进步与发展。技术一旦出现就会被运用到生活中,慢慢地就会形成一种规律或者规则。网络作为信息流通的工具,对于人们的生活有重要的影响。以往人们的信息交流都有这样或者那样的局限,并且缺少及时性和互动性,但是现在人们通过网络进行信息的传递,其限制也就少了。网络也不光提供着信息方面的服务,通过对相关信息的归纳与整理,也使处于不同地区的人建立起相互协调的工作或者合作关系。根据上文可知,技术不会单一地作用于社会,社会对它也会有反馈。当然技术也具有自然和社会两种属性,其自然属性就是技术的出现和发展必须符合自然的发展规律,而社会属性则是人类赋予的,技术在推行的时候受到社会各方面的限制,技术也会有难以预知的影响。网络作为一种技术,社会就会对其发展带来各种限制,我们常说的“经济基础”就是其限制,当然生产力和基础技术的发展也是网络发展的基石。在社会方面,在文化氛围开放轻松的社会中网络就会受到人们的欢迎,但是在文化氛围封闭的社会中网络也许会被人们唾弃。从中我们可以得出:网络的发展不光体现了技术的发展,也体现了网络与社会的密切关系。网络影响着人类社会,人类社会也反作用或限制网络的发展,二者相互抑制又相辅相成。

四、结语

网络作为现代的常用技术,我们已经离不开它,我们也知道网络与社会也是相互合作、相互限制的关系。在本文中,我们通过对社会结构的了解,对网络进行了深刻地分析,以便我们将网络更好地运用到社会中,促进社会的发展,服务于社会。

【参考文献】

[1]结构社会学和网络分[J].社会,1985(06).

[2]窦炳琳,李澍淞,张世永.基于结构的社会网络分析[J].计算机学报,2012(4) .

[3](美)彼得·布劳.结构社会和网络分析.

结构化网络 篇4

传统互联网计算模式主要有两种:客户端/服务器(C/S)模式和对等网络(Peer-to-Peer Networks,P2P)模式。客户/服务器的工作模式是:客户与服务器之间采用网络协议(如TCP/IP、IPX/SPX)进行连接和通讯,由客户端向服务器发出请求,服务器端响应请求,并进行相应服务。服务器通常采用高性能的PC、工作站或小型机,并采用大型数据库系统。长期以来,客户端/服务器(C/S)模式一直是主流的计算模式。

随着终端技术和网络接入技术的发展,终端的能力越来越强,对等网络的技术和作用越来越受到重视。对等网络的工作模式是:各台计算机的地位相等,没有主客之分,每台计算机既可担任服务器角色,向其他计算机提供资源和服务,又可担任客户机角色,请求并享受其他计算机提供的资源和服务。近年来基于P2P技术的应用服务越来越流行,统计数据表明,目前的互联网流量中P2P流量超过60%,已经成为当前互联网应用的新的重要形式。随着对等网络技术的不断发展,人们在互联网上的交流与工作方式将发生深刻变化。P2P技术成为当前网络技术研究的热点问题之一。

1 对等网络的分类

对等网络从不同角度有不同的分类方法。根据拓扑结构具体形态的差别,可以将P2P分为中心化拓扑、全分布式非结构化拓扑、全分布式结构化拓扑和半分布式拓扑4种形式;根据对等网络出现时间先后及体系结构在设计思想上的不同,可以将P2P大致分为三类:1999年出现的混合式对等网络、2000年出现的无结构对等网络和2001年出现的结构化对等网络。本文论述采用后者分类方法。

2 结构化对等网络及工作机理

典型结构化对等网络有Chord、CAN、Pastry、Tapestry等。这些对等网络的拓扑结构均经过严格设计,遵循节点存储资源能够高效、准确查询的原则。如果用关键字(Key)表示共享资源,并为各节点分配IP地址,则应用分布式哈希表(Distributed Hash Table,DHT),如SHA-1等,哈希文件名或者文件内容可得到m位的关键字标识符;哈希节点的IP地址可得到m位节点标识符(Node ID)。如果m足够大,就能确保两个节点或者关键字哈希到同一个标识符的概率小到可以忽略不计。通过为关键字和节点各分配m位标识符,实现将存储数据的位置信息相应地部署在确定的节点上。对某特定网络拓扑结构,通过以下方式可以达到在有限逻辑跳内查找定位资源目的。使用NodeID与关键字标识符数值最接近的节点保存数据的存储位置信息,每个节点建立和维护一个很小的路由表,路由表内存储邻居节点的Node ID和IP地址信息,查询消息以一定方式在节点间传递,直到转发给Node ID与关键字标识符最接近的节点,则该节点就是存储目标资源的节点。

3 结构化对等网络的特性及存在问题

结构化对等网络与其它两种类型对等网络相比,主要有两大特点。第一,网络结构有特殊要求。体现在整个对等网络的组织不是任意的,而是要遵循一定的规范,按这些规范组织的网络,能高效并精确地查询到存储资源的目标节点。也就是说,结构化的对等网络的拓扑结构都具有相当的严密性。目前,结构化的对等网络主要有环型、多维空间、超立方体、蝴蝶型等。第二,技术上也有特殊要求。体现在结构化对等网络都要应用分布式哈式表技术。为了使所有的用户节点在对等网络中能够准确定位,结构化的对等网络均运用分布式哈式表对所有的节点进行相应的映射。但是正因为结构化的对等网络的结构与资源所在位置有密切关联性,为结构化P2P蠕虫提供了一个极佳的传播途径。该环境下的P2P蠕虫利用分布式哈希表所包含的资源与节点索引信息,获得节点的IP信息,进行节点间传播,因此,结构化对等网络也存在着较重大的安全性问题。

4 结构化对等网络的主要技术分析

4.1 分布式哈希表技术

分布式哈希表(Distributed Hash Table,DHT),分布式哈希表技术又叫DHT技术,结构化对等网络的基本技术是DHT技术。DHT类似Tracker的根据种子特征码返回种子信息的网络,是一种分布式存储方法。DHT的特点是:对于不需要服务器管理的网络,如对等网络,依靠节点维护的邻居路由表,以及存储的一部分数据,就能在DHT网络中实现资源的存储和查找。

4.2 查找算法

P2P系统中各节点地位均等,有关资源分布存储在各个节点中,为了查找定位某一目标资源,需要建立一套资源搜索机制,使得各个节点都能从其他节点中找到所需资源。资源搜索机制必须保证用户能够迅速找到所需资源,同时尽可能提高带宽的利用率。

在典型的结构化对等网络Chord、CAN、Pastry、Tapestry中,Chord模型与其他的P2P模型相比,具有良好的可扩展性,可靠性和良好的查询效率。

Chord是MIT等人提出的一种分布式查找算法,这种查找算法能在P2P网络中较快速地查找到所需要的资源。其基本查找过程是:如果给定一个关键字(Key),利用Chord可以有效地把该关键字映射到特定对等网络的某个节点上,这样,只要给每个数据V都赋予一个关键字K,通过Chord就能实现节点与数据的一对一关联,即在该关键字映射的节点上存储或提取相应的(K,V)对。通过使用分布式哈希表技术,实现关键字和节点标识符的分配,假设分配给每个关键字和每个节点的标识符均为m位二进制数,为了区别,m位关键字标识符用K表示,m位节点标识符用N表示。把各节点标识符取模2m后得到的结果由小到大排序,并以此顺序沿顺时针方向将各节点组织成一个逻辑的圆环,通常称为Chord环。将关键字标识符为K的(K,V)对存储在Chord环上节点标识符数值等于K或者紧跟在K之后的节点上。在Chord环上节点标识符紧跟在K之后的节点称为K的后继节点,通常用successor(K)表示。后继节点实际上是在Chord环上从K开始顺时针方向距离K最近的节点。这样,每个节点只要建立和维护由它的后继节点的标识符和IP地址组成的路由表,通过后继节点指针在圆环上传递,就能查找定位到特定关键字标识符K对应的目标资源(K,V)存储的位置。如果关键字的标识K落在某个节点标识和它的后继节点标识之间,则这个后继节点就是存储目标资源(K,V)对的节点。

Chord的优点主要有三方面。第一,算法简单;第二,具有可扩展查询过程的通信开销以及节点维护的状态与系统总节点数直接相关,并且是某种指数关系。假设在Chord构建的一维环形值域空间中,节点的数目为n,则每个节点维护邻居的指针列表为O(logn)个。按照这种算法,如果指针的起点是第i项,则指针指向2i远的节点,如果此节点不是所要查询的最终目标节点,则指针移向它的后继节点,依此下去,最终可查询到目标资源。因此,每次查询使得从起点到终点的距离缩减一半,容易证明其查询的路径长度是O(logn)。第三,Chord使得网络的某些安全性能得到提高。这是因为:第一,Chord采用SH-1散列算法,而SHA-1已经被公众密码社群做了非常严密的检验而还没发现到有不安全的地方,它现在被认为是安全的;第二,Chord既是环形结构,又是分布式系统,并且各节点地位平等,所需要完成的工作又相同,因此Chord系统具有很高的健壮性,抗Do S(拒绝服务)攻击的能力较强。

4.3 信誉管理机制

对等网络由于具有非集中性、可扩展性的优点,使得其在大规模的因特网上得到了广泛的应用。对等网络模式实现了因特网上的各种主机对网络空闲资源的共享与利用,实现了各节点之间方便可靠的数据通信。但是,正是这种方便、高效的共享模式同时也带来了网络安全问题,特别是存在着恶意节点的搭便车行为。因此,必须为系统提供一套可靠的信誉管理机制,验明只有友好节点才能相互通信,保护可信任的节点,拒绝恶意节点,确保用户之间的共享资源的访问安全可靠。

在目前国内外提出的各种节点信誉管理机制中,大部分都采用集中式的方法,但这种方法容易出现性能瓶颈,因而出现了非集中式的方法。但传统非集中式的方法需要增加额外的节点的参入与辅助来计算信誉度,需要额外消耗一些网络资源。随着P2P技术的发展,学者又提出了各种使用对等网络策略的节点信誉管理机制,例如,非结构化对等网络信誉管理机制和结构化对等网络节点信誉管理机制。前者使用一种新的非集中式的策略,根据节点与应用的需求计算节点的信誉度,具有独立性,不需要其它节点的参入与辅助。把加入对等网络的节点行为划分为恶意行为与友好行为,既可以统计节点对系统的贡献,也可以根据恶意行为而减少节点的信誉度。后者使用全局储存方式保存信誉度信息,将文件信誉与节点信誉相结合,避免恶意节点通过修改标识符伪装友好节点的行为。这两种信誉管理机制都是对等网络中一种真实的、高效的、信誉机制良好的资源共享策略。结构化对等网络的节点信誉管理机制使其共享安全性得到提高。

5 结构化对等网络的前景展望

虽然结构化对等网络的技术目前还不够完善,例如它的容错性还不够理想,安全性还有待提高,但是随着人们对结构化对等网络的进一步研究,这些问题将逐步得到解决。结构化对等网络具有很好的扩展性,可靠性和可维护性;基于DHT的结构化P2P网络具有确定的查询复杂度和维护开销。这些特性和优点使得它能够更好地被应用到实际的网络应用之中,并能更好地满足用户的需求度,因而有广阔的发展前景。

6 结束语

本文分析了结构化对等网络特性、存在问题及关键技术指出结构化对等网络有着广阔的发展前景。为了加快结构化对等网络在实际中应用步伐,必须加大力度对其关键技术的研究,尤其是DHT的路由效率问题,查询系统的性能及其容错性问题,对等网络的安全性能问题都是今后的研究重点。

参考文献

[1]於建华.基于应用层特征串的P2P流量识别及控制[J].金陵科技学院学报.2011.

[2]彭丽媛,刘杰,赵霞,许庆平.结构化P2P网络Chord算法研究[J].北京工商大学学报(自然科学版).2008.

[3]徐蕾.对等网络的发展与现状[J].读与写杂志.2010.

[4]王立壮,王培峰.对等网络(P2P)蠕虫模型分析与防御技术研究[J].计算机安全.2010.

[5]张波.浅谈结构化对等网络路由机制关键技术[J].硅谷.2010.

[6]魏再超,张晓睿.基于DHT的结构化P2P网络的性能比较[J].福建电脑.2011.

[7]贺英杰,闫弘杉.基于SNMP的DOS攻击特征提取方法[J].计算机安全.2009.

[8]Hughes D,Coulson G,Walkerdine J.Free riding on gnutella revisited:The bell tolls[C].IEEE Distributed Systems Online.2005.

[9]项武,秦景.非结构化对等网络中的信誉管理机制[J].计算机工程与设计.2010.

结构化网络 篇5

论文摘要:进入90年代以来,网络技术飞速发展,计算机网络逐渐应用于教育领域。本文在调查网络教学发展背景的基础上,归纳了网络课程的基本功能结构;从理论层面上分析了网络课程的基本特点;列举了目前网络课程的4种模式,最后对网络课程的发展前景作了展望。

一、网络教学发展背景

在这个高科技迅猛发展的信息时代,教育信息化成为一种必然趋势。多年来,学校计算机辅助教学的推广为提高课堂教学效率,促进教师教育观念起了一定的作用,但传统的计算机辅助教学是教师主导传授,学生被动或机械练习。而网络环境教学,是基于多媒体技术的网络技术下的新的学习理论,在这种理论中,学生是知识学习的主动者,外界信息经过教师的组织、引导,学生主动建构进而转变成为自身的知识,这种理论的形成优化了课堂教学模式和结构,使老师和学生共同作用于教学过程,起到协调作用。这种开放性、创新性的教育思想和模式,有利于克服传统教学模式的弊端和固疾。在新形势下研究和探索网络课程的教学,是适应新世纪教育的需要,对全面实施素质教育有着十分重大的意义。

二、网络课程的基本功能结构

众所周知,网络课程的设计应依据建构主义学习理论的思想,以“学习者”为中心;应当对教学活动和学习环境作重点设计,二者缺一不可。由于网络课程在很大程度上依赖于学生的自主学习,所以网络课程的基本功能结构也应按学生自主学习的要点来设计。

学生通过网络可进行一系列的学习活动,如自学、讨论、实践活动、作业提交、考试及网上资源搜索、资料查询等活动。另一方面,学生可以通过网络查询自己的学习记录,从而对学习起到一个督促和自我监督的作用。例如我本学期所带的Flash课程,大部分都是在机房操作教学,本身就利用了局域网的功能。在机房中教师机可以控制学生机以便督促学生学习,而学生在做完例子后可以通过局域网提交作业,这样教师在一台机子就可以及时

检查学生的作业并做好记录。

三、网络课程的基本特点

计算机网络是当今科技发展的结晶,而网络教学也不同于传统的教育教学。网络课程主要有以下几个方面的特点:

1、资源共享性

学生通过网络可以共享资源,其中包括硬件的共享和软件的共享。网上资源丰富多彩、图文并茂,学习者在链接或教师指导下,可轻松自如地在知识的海洋中翱翔。取之不尽、用之不竭的信息资源,神奇的网络环境,对学生创造思维的培养,对实现教学过程紧要关系的转变,对促进从应试教育向素质教育转化都将产生重大的影响。

2、虚拟性

网上教育的时空不限性给教学活动带来虚拟性,现在虚拟教育已经成为人们津津乐道的话题。虚拟教育可分为校内模式和校外模式,校内模式指在校园网上开发的各种教育应用,校外模式指网上远程教育。可以把校内模式与校外模式有机结合起来,成为一个新型教育系统。

3、实时交互性

网络教学最大特点是它的实时交互性,实时交互性是指在网络上的各个终端可以即时实施回答。交互的方式有师生之间和学生之间。通过课件还可以有效地获得图文并茂的教育信息,师生之间的交互可以得到教师的指导,学生之间的交互可以进行协作学习,这种双向交互活动不仅使学生通过视、听手段获取教学信息,而且还可以激发学生对此的兴趣。

4、协同创作性

通过网络进行学习,学习者可以利用适当的软件工具支持协同创作。现在许多网络教育平台带有群件系统的功能,能够支持一个学习群体方便地进行通讯交流、工作空间共享、应用软件共享和协同创作。

四、网络课程的教学模式

利用网络技术来进行教学。按照通讯角度来讲,有同步教学和异步教学;按照学习者的组织形式来看,可以有个别化学习、小组学习;按照课程材料媒体种类来看,有多种媒体参与的混合形式或者仅利用web媒体的单一形式。应用Web来进行教学的网络课程的教学模式,这里简述4种:

1、信息传递式:信息传递式是指利用Web发布教学大纲、课程内容、讲座笔记及作业细节和百科全书,加上在线信息资源的超链接,学生可以在没有和教师或者其他同学交流下完成学习任务。这种模式是目前网络课程比较普遍的方式。

2、合作学习模式:合作学习模式主要强调的是学生之间的交流活动。它体现的使学生之间的合作学习。它通过创设支持式环境,使得班级学生成员之间可进行提问、解答和资源共享等合作活动。

3、辅助学习式:这种课程模式的特点是教师辅助学习者的学习,采用Email、电子论坛或计算机视频会议来提供指导等服务。辅助学习模式还可以确定参数来建立多用户对话环境。

4、内容生成式:内容生成式指的是学生自主寻找、建立、组织具体知识领域的内容,实现信息资源的同化、交互和综合。具体的活动是学生设计开发网页,通过网络资源和链接按照自己的方式将信息内容呈现。这种模式中,学生是信息资源内容的重要来源。

五、网络课程的发展趋势

网络课程因其自身灵活的特点使得它在继续教育、素质教育及职业教育方面都将有很大的优势。虽然有人认为网络课程不能有效地刺激学生去学习,但是不断增长的学生需求和网络所提供的更多的学习机会是网络课程的优势所在。我认为基于Web的网络课程在将来的发展有以下几个趋势:

第一,资源渐趋丰富,课程种类更齐全

据统计,美国目前已有450多所大学建立了网上虚拟学校,开设了200多个专业,学生数量达10多万人。将来的网上课程门类齐全,有自主学习课程、成人教育课程、学科教育课程等;提供的服务形式也越来越多样,学生可以网上快速地检索出自己所需要的课程节目信息或学习资料。

第二,以课堂教学为基础转向以学习活动为中心的课程设计。

以课堂教学为基础的课程强调课程的内容设计,而以Web为基础的教学不应是传统课程内容的照搬。今后网络课程的设计应是结合Web的具体特点,以Email答疑、电子论坛、计算机视频会议等学习活动为中心的设计。

第三,以Web的低级应用设计转向Web高级应用的设计。

随着Web技术和教学设计理论的发展,网络课程的开发必将从Web的低级应用阶段转向Web高级应用。目前出现了一些网络课程工具平台,这种平台的设计使基于Web的课程在制作、管理和应用上都迈进了一个新的台阶,Web必然将应用于课程教学。

浅析无线蓝牙技术的网络结构模式 篇6

关键词:网络控制 网络管理 主、从节点 时钟

蓝牙技术作为电子数码设备无线互联的低廉和可靠的技术实现方式,可以作为现有所有移动设备中的短距离的无线数据收发机。蓝牙技术从最开始的研发到完善经历了较长的过程,优化和扩大了各个应用领域,进一步提升了无线通信的实用性、可靠性和安全性。较之于其他的无线通信方式,蓝牙技术有自己独特的连接模式。利用开放式代码和快速地寻址方式使其在通信领域得到快速发展。现就蓝牙技术的网络连接结构简要地分析。蓝牙微微网是一种个人无线区域网,蓝牙数据又以分组的形式出现,它必须具有无线区域网的一般特征。主要有以下三个方面体现:信道多址传输技术、多层协议及其接口的使用;路由算法。蓝牙微微网中的智能控制行为表现为对网络的控制和管理两个方面。

1 网络管理

网络管理主要有两个方面的内容:一是对运行设备的管理;二是对运行的管理,运行管理中的重点是对链路的管理。

1.1 网络管理的基本内容 无线局域网按结构划分基本型和专用型。基本型是节点之间彼此平等地进行通信的一种网络,它们之间的连接十分简单明了,不会组成复杂的主干网。专用型网络结构复杂,它在基本型结构的基础上增加了多个功能。

1.2 从局域网到主干网 从WLAN主干网的网络话务方向称为上行链路。上行链路内移动节点的传输需要多址协议支撑。多址协议的描述物理信道具有的动态性能上。由于信道传送的多径衰落性质,使得信道特征不可预测,能在极短的距离上产生变化。显然,衰落信道通信有不可靠性,往往存在不公平接入。实验结果表明,这种信道会因1ft的移动或10-20ms时间内合接收信号的强度发生很大的变化。网络管理还需要研究网络拓扑结构发生变化时的应对措施。对于固定节点,无线网络的拓扑结构发生变化的起点是移动的。

2 网络控制

WLAN的复杂多变结构决定了对它的控制需要分步来进行。首先,一个网络在使用前必须进行初始化处理,初始化的主要内容是它具有可使用、可驾驭的性能,否则网络会失控,就丧失了存在的意义。初始化的主要内容是确定网内各节点之间是否建立了正常的连接,是否存在着能够传输分组的信息通道。有两种方法可以用来进行初始化:一是每个节点激活后周期性广播“分组无线网络组织分组(PROP)。节点广播的目的是告之网络内其他节点:有本节点存在于网内。凡是听到PROP的其他节点,能够将它置于自己的邻居节点为表中。这样一来,每个节点都能建立一张网络内已经被激活的邻居节点表,与此同时,到达其他任一节点的最佳路由也计算出来,这就为一个节点与任一节点之间的通信创造了条件。

网络初始化的另一种方法是周期性地采用自组织法。所谓自组织是网内所有节点同步动作,被授予一个或几个时隙,在这个或这些固定的时隙内,每个节点都广播自身的状态或相关信息,为了不发生拥挤和混乱,事先固定各节点的广播顺序。

对网络连接性进行测定,在满足已能使用的条件下才宣告初始化的结束。测定可以通过直接或间接的方法进行。直接测量的方法是测量信号幅度、信噪比、误比特率等多项指标,看其是否达到设计要求。间接测量测定接收端正确接收分组的比例,达到足够高的比例后才能结束初始化,让网络转入工作状态。

网络控制的难点是流量控制。网络中心节点发送分组数据是随机的,谁也不能事先断定移动用户在什么时候往哪个节点发送信息。大批量的信息流必将形成网络堵塞。经过分析与考察,网络堵塞与以下的因素有关:随机多址协议执行过程中具有不稳定性;移动节点发送信息具有随机性;分组无线网络拓扑结构具有动态变化性。

3 蓝牙节点的时钟

蓝牙信道位于蓝牙微微网内,蓝牙信道的基本特征是由微微网的主节点来确定的。除此之外,主节点通过轮询方式控制信道通信。在这里,所谓主节点被定义成能向一个或多个从节点提出并实施连接的蓝牙单元。主节点的性质并非一成不变,也就是说,主节点和从节点在已建立的微微网中完全可以互换,网络内的每一个单元都有资格成为主节点,这是因为在微微网中,每个蓝牙单元的权重都完全相同。

蓝牙数据的发送不能杂乱无章地进行,无论是发送蓝牙数据的主节点,还是接收蓝牙数据的从节点,都需要统一的时钟信号来指挥。每一个蓝牙节点都有一个内部系统时钟,时钟的功能正是经发送/接收定时并跳频。由此可知,只要蓝牙运行,蓝牙时钟就永远不会关闭。每个节点都有各自的时钟,不同节点之间就需要同步。蓝牙节点自身的时钟叫本地时钟,其他节点的时钟可能与本地时钟不同,但由于时钟转动的快慢是相同的,因此要想同步只需要给本地时钟加一个补偿值。

主、从节点的时钟有不同的用途:主节点上的蓝牙时钟能够确定微微网信道的定时和跳频。从节点虽然也有自己的时钟,但却需要从通信链路上接收主节点的时钟,并在自己的本地时钟上增加一个补偿值以便与主节点时钟同步。该补偿值需要的规律地更新,因为时钟不能受到控制。

因此在蓝牙技术的网络模式中,管理与控制始终处于工作状态,并保持整个无线通信的顺畅。

参考文献:

[1]宋俊德.蓝牙核心技术[M].北京:机械工业出版社,2001.

[2]郭磊.蓝牙如何继续发展[J].通讯世界,2003,5.

结构化网络 篇7

网格计算平台可以共享与聚集处于多域范围内的、地理位置分布的计算资源、数据资源与存储资源,是目前很常见的一种分布式计算模式。但是当前的网格或分布式计算系统往往采用了集中式或半集中式的结构,很难把计算的规模扩展到大规模的因特网上。对等计算模式由于采用了非集中式的结构,充分利用当前的网络带宽,可以把处理网络边缘的、使用效率低的空闲计算资源聚集到计算平台中来,某些文献上也把它们称为P2P-Grids桌面网格[1,2,3],是一种较好的网络拓扑结构与平台。P2P-Grids也有利于系统的可扩展性,同时也可以克服集中式的系统的单一失效点问题,使系统具有稳健性。

桌面网格共享的计算资源主要是桌面PC机,把PC机作为对等网络中的对等实体,随着网络带宽的提高与各种新网络协议的出现,近年来桌面网格也被广泛应用,通过运行计算量大的、分布式的应用,来充分共享大规模因特网上的计算资源,如ShareGrid[1]、Alchemi[2]、WSPeer[3]、OurGrid[4]、P3[5]等项目都是典型桌面网格的例子。

本文提出的UDGP就是一种利用对等网络技术来构造的非集中式的桌面网格计算平台,它把平台中的节点划分为工作机对等实体、管理机对等实体、应用程序对等实体,共同的协同与合作,完成一个并行分布式应用问题。

UDGP平台由于结合了网格技术与对等网络的优点,所以具有可扩展性、非集中性、鲁棒性强、高效性的特点。运用了一个混合式非结构化对等网络的JXTA通信库,组织UDGP平台中的节点,高效率地实现消息的路由、资源的发现。最后对该桌面网格平台的性能进行了实验与分析,以生物信息学多序列比对作为并行案例程序,模拟实验结果证明了平台的正确性与高效性。

1 UDGP平台的设计

1.1 平台概况

UDGP是建立在对等网络JXTA协议标准上的,属于一种混合式的非结构化的对等网络。在JXTA协议中,具有两个类型的对等实体:普通实体与集合对等实体,通过比较与类比,把UDGP平台中的实体组织也分为为工作机对等实体与管理机对等实体,应用程序对等实体是完成应用的提交与控制的主控机,有别于纯非结构化对等网络。和结构化对等网络比较起来,尽管这样的设计在服务的调用、消息的路由上有时候要经过管理机,但是在某种程度上处理了对等网络的安全性与可信誉机制问题,控制了对等网络的搭便车行为[4,5,6]。

因为UDGP平台使用一个混合式非结构化对等网络结构,大部分对等实体都平等地进行消息路由与通信。但是管理机对等实体是用来执行任务工作组之间的消息路由的,消息的路由的过程就是平台中网络资源的发现过程。由于借助了JXTA框架,这使系统具有自组织特性与安全性。

1.2 对等实体的组织

UDGP平台的对等实体组织如图1所示,包括管理机对等实体、工作机对等实体和应用程序对等实体。因特网上的空闲计算资源都可以作为某种角色的节点加入到UDGP平台中来。为了使平台达到可扩展性和鲁棒性强的特点,平台可以由多个管理机对等实体组成,每个管理机下属聚集着一些工作机节点。每个管理机及下属的工作机形成一个任务执行工作组。在这个工作组里,工作机可以直接与组内的其他工作机协同与合作,也可以与该组的管理机通信与合作。

UDGP在构建时,因特网上的空闲计算资源以浏览器的方式访问UDGP的客户端界面,作为一个工作机实体启动,搜索平台中的可用的管理机实体,如果搜索到一个管理机,工作机将与其建立网络连接,并开始通信与准备接收任务相关的数据与代码。管理机节点下属的工作机数量有一定的限制,当达到一定的数目时(总节点数一般不超过100),管理机节点将拒绝工作机再加入任务执行工作组,这样设计的目的是防止工作组里的管理机负载过多。当工作机节点进入工作组后,在管理机的分派下开始执行应用程序的工作单元。桌面网格中的工作单元是一个很重要的概念,因为适合在桌面网格上运行的应用往往是计算密集型的粗粒度的并行,一个大的任务能够被划分很许多独立的子任务,子任务之间很有数据依赖关系,所以某些文献上把其称为工作单元。

如果在某个时间段内,一个工作机节点不能连接到管理机节点,它将作为新的管理机节点角色启动,监听与等待其他的工作机来加入形成新的工作组。这种设计使得UDGP平台具有自组织特性,自动地划分并形成多个工作组,同时使平台具有稳健性,克服单一失效点问题;也具有可扩展性使其规模很容易扩展到大规模的因特网上。UDGP平台在初始化时,第一台主机将自动作为一个管理机角色,开始接收工作机的加入。随着新的机器加入到平台中来,新的任务执行工作组是自然形成的。当一个管理机由于网络或物理故障退出平台,它下属的工作机将自动去寻找平台中的其他管理机节点,或其自己形成一个管理机节点,来等待新工作机的聚集,这样某些节点异常退出就不会影响平台的应用执行。

1.3 平台的工作机制

为了使用UDGP平台解决一个并行分布式计算问题,应用程序对等实体将提交一个任务集,它将随机地把任务集分派给一个管理机节点。管理机节点将把该任务集划分为了若干个比较小的工作单元,该工作单元是UDGP平台并行执行的单元。管理机保持了一个有限的任务集的计算量,并把这些工作单元分发与调度给下属的工作机节点执行。如果当前的任务集的计算量太大,管理机在划分工作单元的过程中,将保留一部分工作单元,并把剩下的工作量分派给其他的管理机节点。如果没有更多的计算资源,没有执行完的任务集将返回给应用程序实体。提交给平台的所有的任务集与工作单元都具有全局唯一的ID号,这样管理机节点使用该ID号来区分它自己所处理与接收过的任务集。当一个工作机节点完成工作单元计算后,它将返回该工作单元的临时结果到管理机端,随后管理机将把该结果前传到应用程序对等实体,如图2所示。

图2中描述了平台的工作机制:应用程序实体提交了任务集,任务集被划分为1000个独立的工作单元,该1000个工作单元将被7个任务执行工作组来并行执行。工作组A,B,C三个工作组自己保留100的工作单元,这些工作单元由下属的工作机来执行。工作单元没有继续下传,因为工作组E,F和G已经有足够的计算能力,可以处理工作组A,B,C剩余的700个工作单元。图中的工作组D不再划分任务集,即到了工作组D上未处理完的工作单元将返回到应用程序实体。

2 UDGP平台的实现

2.1 UDGP的实现模块设计

UDGP平台的实现采用的是Java语言,有了Java及JXTA的字节码技术可以使UDGP平台聚集各种软硬件与操作系统组成的网络资源。Java内置对安全性功能也可以防止恶意的工作机访问网络资源的可执行字节码(Jar包)。另外Java的流处理技术与对象序列化技术可以把UDGP网络中的节点的软件信息与硬件信息进行封装,很方便在各种节点之间进行传输,编程方便。根据UDGP平台的节点角色及工作机制,把UDGP平台的实现模块分为几个部分,如图3所示。

UDGP平台的Java主类用来配置系统并发起工作机节点与管理机节点,启动用户界面模块。 用户自定义的配置选项被装载到该主类中,而且该主类初始化了JXTA协议环境,加入到默认的任务执行工作组。主类也是UDGP平台的应用程序实体的入口,当应用程序实体启动时, 它将创建和发起一个新的工作机对等实体模块的主类,这在后面有详细的描述。

2.2 工作机对等实体

工作机对等实体模块实现了工作机的功能,当UDGP平台的主类被执行后,工作机模块主类的实例将创建并启动一个独立的线程。当连接到一个管理机时,工作机将周期性地轮询管理机并获取工作单元。工作单元被封装成Java对象。工作单元对象通过管理机来创建,被序列化并且通过字节码的流对象传输到工作机端。通过调用管理机端的run()方法,工作机将以线程的方式执行工作单元的字节码。当工作单元在执行的过程中,通过发送心跳消息给管理机,确定自己的存在。

工作机也周期性地检查工作单元的执行结果是否被返回到管理机端。工作单元被执行完后,返回的临时结果也是序列化的对象。当工作机端没有可以执行的工作单元时,它将启动一个负载Benchmark程序,用来标识一个工作机当前的性能情况。该Benchmark程序的运行结果被发送到管理机端。被传输到工作机端的工作单元的可执行字节码只包括对象的域(数据),不包括对象的方法(代码),为了能够重新创建任务对象的相应的Java代码,该功能必须启动到工作机端。

所有的传输到工作机端的类都需要经过UDGP的类装载模块完成。通过使用一个自定义的类装载器,将创建一个沙漏式的环境,可以避免这些代码访问本地机器的私有资源,这里体现了UDGP平台的安全性,由JXTA提供。UDGP平台的类装载器维持了一个Jar代码的存储器,这些存储器可以包括不同的版本的Jar包,即允许存储应用的不同的代码版本。代码存储器也可以作为Jar的缓存。对于工作机端的代码存储器将不会传输到别的机器,因为它们在工作机端已经是可以执行的了。

2.3 管理机对等实体

应用程序对等实体作为提交工作的一个部分,将上传一组Java包到管理机端,这里包括所有的可执行串行代码。管理机端将根据需要把Jar包传输到工作机端,当工作机在某个时间段内找不到管理机时,它将创建一个管理机模块的主类,启动管理机端的线程。在开始的时候,管理机端开通两个JXTA管道,第一个管道用来与工作机端建立起连接;第二个管道是用来与应用程序实体提交任务的数据传输通道。

新加入的工作机试图连接管理机,当管理机下属的工作机没有达到数量限制情况下才接收。和前面所描述的一样,当空闲的时候,工作机周期性地轮询管理机获取计算任务,该轮询类似于分布式系统中的心跳机制。如果一个工作机处于非空闲状态,它将不去轮询管理机;如果是已经连接上的,在经过某个时间段后,将断开与管理机的连接。

2.4 应用程序与监控

应用程序对等实体的功能是实现并行应用任务的提交, 任务集将被提交到管理机端。每个任务集都对应着一个任务描述文件, 该任务描述文件相当于传统并行计算环境下的作业说明书。 应用程序节点寻找网络中的管理机节点, 一旦管理机节点被找到,任务集将被提交到新发现的管理机端。

应用程序开发员可以在应用程序实体上注册一个监听对象, 当工作机端的工作单元的结果返回后或任务集不能被提交时,该监听对象将被确认。任务集在应用程序实体上保存一段时间,随后将继续提交到管理机端。

系统的监控模块是由应用程序监控类完成,它用来提供网络与系统的状态监视。应用程序模块在执行时将自动启动一个监控线程,如果一个管理机开始工作,本地的监控线程将周期性地查询管理机的状态,发送这些状态到UDGP平台中的其他监控线程,这些机器的硬件信息与软件信息都是通过JXTA的管道发送的。监控线程也维持一个平台中所有的管理机的列表,根据每个管理机的负载与性能进行排序。由于平台中的管理机的数目十分多,所以监视的都是最近时间段的一些信息。

2.5 界面与通信协议

UDGP应用程序对等实体可以通过一个网页控制应用界面模块,在开始的时候, 应用将在本地主机上启动一个小的Web页面,通过这个界面,用户可以开始与停止本地的工作机与管理机节点, 把各种角色的机器连接上JXTA网络, 界面模块里也有状态信息页面, 该页面提供了当前的工作机的负载统计信息,也提供了管理机节点的状态信息, 该信息是由监控线程完成的。通过使用配置页面, 用户可以改变平台的配置。

除了JXTA协议外的通信过程,协议设计都是简单化原则,基本文本文件。虽然当前有一些比较新型的网络协议, 例如RMI与JMS,RPC等,但是由于这些协议都是开发源代码, 本身可能存在有一些问题, 所以UDGP平台除了JXTA外,使用了内部自定义的通信协议,使用这些文本式的协议既方便了调试也容易实现,图4显示了文本通信协议的例子。

3 测试与性能分析

3.1 测试环境与评价标准

机器的软硬件配置如表1所示, UDGP的硬件网络拓扑如图5所示。把JXTA框架中的一系列的Jar包与支撑UDGP平台运行的Jar包直接复制到JRE运行环境中,通过浏览器即可把各种角色的节点加入到UDGP平台中来。应用程序对等实体提交并行任务,即可以启动UDGP平台的运行。

测试UDGP平台的性能的并行案例程序选择了生物多序列比对ClustalW算法[7]。评价目标为UDGP平台的可扩展性、非集中性、稳健性、高效性等,稳健性与高效性通过计算时间来体现;可扩展性与非集中性通过加速比来体现。

3.2 性能分析

在多序列比对的ClustalW算法测试时,根据选取好的50条SARS冠状病毒序列,序列的数据可以从基因数据库中进行下载[8]。可以从用户先设置好序列文件,序列文件作为代码单元的数据,包括数据文件(**.seq)和参数文件(**.parm)。其中前者为代码单元要进行比对的序列对象数据,包括N(N>=2)条基因数据;而后者则包含一些比对过程中所需的简单参数。在UDGP平台的工作机节点个数n(n=8、16、24、32、40)的情况下进行了测试。当任务提交后,平台的管理机对等实体将各个序列分配在工作机节点上进行比对。当所有的代码单元完成后,应用程序实体进行处理,最后得到比对结果。经过测试,在计算时间上,系统可以稳定运行72个小时。最终的结果文件包括:**.dnd和**.aln两个文件。其中前者为向导树文件后者为序列结果文件。**.dnd和**.aln两个文件可以采用生物信息学里的软件查看,如 TreeView等。

经测试,整个过程需进行总共1225次双序列比对。试验中性能最好的一台PC完成一个工作单元需要大约30分钟,而性能较差的PC则需要约54分钟,计算后得出运行一个工作单元平均需要大约42分钟。在UDGP平台工作机节点数不同的情况下,计算的加速比如图6所示。

由图6分析,计算加速比随着工作机节点数的增加而增加,在工作机节点数为8时,计算加速比为5.7,在工作机节点数增加到40时,计算加速比为30.6。加速比的变化基本正比于工作机节点数的变化,加速比曲线出现的一些波动是由工作机节点和网络状态的不稳定造成的,从规模来看,当工作机数量达到很多的时候,加速度提高比很明显,基本接近于理想值,这也证明了桌面网格平台在时间长、规模大的情况下,有时性能也可能达到集群或网格计算模型的速度。该实验也表明本平台的稳健性、可扩展性。

4 相关工作

非结构化对等网络例如Gutella或Napster等,并不把应用层的覆盖网络形成为一个有组织的结构,每个对等实体维护一个活跃邻居列表,但是由于缺少结构,所以其并不知道它要查找的资源的具体信息,所以该对等实体是通过广播的方式来查找的。为了限制网络的跳数,所以动态查询或TTL被设置出来,非结构化对等网络可以充分利用网络的带宽,具有非集中性、稳健性、规模大、可扩展性的优势。

结构化对等网络有Chord与Pastry等,通过把应用层的节点形成一个有组织的网络(环状或立方体),目的是为了满足查找的高效率,在结构化对等网络里只需要O(logn),而非结构化对等网络里需要O(n)的复杂度,但是结构化对等网络具有维护结构的开销,而且其大多情况应用在文件与数据共享平台,对于桌面网格计算,往往不合适。

目前有很多利用非结构化对等网络的构建的桌面网格平台。OurGrid[4]项目使用一种轻量级的P2P方式来发现空闲对等实体,形成一个网格计算平台,它强调的是分布式代码的执行,OurGrid能够自动把任务分发与调度到空闲对等实体上,同时使用一些了解网络状态的全局超级节点来控制负载的均衡,这样可以有效地防止对等网络中的搭便车行为。OurGrid项目的另外一个特点是处理的是数据依赖很小的主—从风格的并行应用。

ShareGrid[1],Alchemi[2], WSpeer[3]等项目都试图克服对等网络的安全性与可信誉机制差的缺点,尽量摈除搭便车行为,发挥网格平台的稳健的面向服务的资源管理框架的优势,资源管理与调度、服务发现是这类平台的关键技术。

P3[5]、SP2A[9]、JNGI[10]、Pawn[11]等也用到混合式的非结构化对等网络JXTA框架,支持节点的直接或间接通信,具有分布式多应用支持和容错性特点,与UDGP平台比较起来,其编程接口与应用范围具有一定的限制。

本文的UDGP平台与Gutella等纯非结构化对等网络不同,采用混合式对等网络的JXTA技术与非集中式的结构,与上面的项目比较起来,通过利用对等实体监控、文本通信协议等高级技术,发挥了对等网络的优点,可以把网格扩展到大规模的因特网上,是构建桌面网格的一种新方法。

5 结 语

本文利用对等网络可扩展性好的优势,采用非集中式结构,描述了基于混合式非结构化对等网络的桌面网格平台UDGP的设计、实现与性能评估。UDGP平台由于结合了网格技术与对等网络的优点,利用了对等网络的JXTA框架,所以具有可扩展性、非集中性、鲁棒性强特点。通过构建测试环境,以基因多序列比对的作为案例程序,验证了UDGP平台的正确性与高效性。下一步的工作是研究管理机端的调度机制与工作机端的负载均衡机制,从而充分提高因特网上的空余计算资源的利用率。

摘要:利用非结构化对等网络的可扩展性与非集中性的特点,设计与实现了一个基于混合式非结构化对等网络的桌面网格平台UDGP(Unstructured P2P Desktop Grid Platform)。UDGP平台中的节点角色分为工作机对等实体、管理机对等实体、应用程序对等实体,共同的协同与合作完成并行分布式计算。利用了一个通用的混合式对等网络通信库JXTA,JXTA框架方便了对等实体直接或间接的通信,保证了对等实体组的自组织特性与安全性。构建了平台的测试环境,以生物多序列比对作为案例程序,实验结果表明UDGP平台的加速比与计算时间比同类系统性能较好,具有稳健性、高效性与可扩展性的特点。

关键词:桌面网格,对等网络,非集中式系统,资源共享,可扩展性

参考文献

[1] Anglano C.Canonico M,Guazzone M,et al.Peer-to-Peer Desktop Grids in the Real World:The ShareGrid Project[C]//Proceedings of 8th IEEE International Symposium on Cluster Computing and the Grid,2008,8:621-626.

[2]Luther A,Buyya R,Ranjan R,et al.Alchemi:A.NET-Based Enter-prise Grid Computing System[C]//Proceedings of the 6th InternationalConference on Internet Computing(ICOMP'05),2005:27-30.

[3] Harrison A,Taylor I.Dynamic Web Service Deployment Using WSPeer[C]//Proceedings of 13th Annual Mardi Gras Conference-Frontiers of Grid Applications and Technologies,Louisiana State University,2005:11-16.

[4] Andrade N,Costa L,Germoglio G,et al.Peer-to-peer grid computing with the ourgrid community[C]//Proceedings of the SBRC 2005 - IV Sal~ao de Ferramentas,2005.

[5] Shudo K,Tanaka Y,Sekiguchi S.P3:P2P-based Middleware Enabling Transfer and Aggregation of Computational Resources[C]//Proc. of the IEEE International Symposium on Cluster Computing and the Grid,2005,1:259-266.

[6] Fox G,Pallickara S,Rao X.Towards Enabling Peer to Peer Grids[J].Journal of Concurrency and Computation:Practice and Experience.ACM JavaGrande ISCOPE Special Issue,2004.

[7] Thompson J D,Higgins D G,Gibson T J.CLUSTAL W:improving the sensitivity of progressive multiple sequence alignment through sequence weighting,position-specific gap penalties and weight matrix choice[J].Nucleic Acids Research,1994(22):4673-4680.

[8] EMBL database 2010.http://www.ebi.ac.uk/embl/ index.html.

[9]Amoretti M,Zanichelli F,Conte G.SP2A:a Service-oriented Frameworkfor P2P-based Grids[C]//Proceedings of 3rd International Workshopon Middleware for Grid Computing(MGC05),November 28th--De-cember 2nd,Grenoble,France,2005.

[10]Verbeke J,Nadgir N,Ruetsch G,et al.Sun Microsystems,Inc.,Frame-work for peer-to-peer Distributed computing in a Heterogeneous andDecentralized Environment[C]//Proc.of the third International work-shop on Grid Computing(Grid 2002),2002:1-12.

网络媒体的叙事结构 篇8

>原型沉淀

网络编辑追求“点击率”的事实已不言自明, 尤其是对于公共事件, 网络媒体往往会尽力强化故事中人物的对立矛盾。其实, 展现事件双方的矛盾是新闻报道的普遍手法, 媒体会将公共事件中对立的双方进行原型沉淀, 即为事件中的各个人物角色添加典型的标签, 以此唤醒网民共同的心理期待。

主体和客体通常是网络媒体叙事结构中的核心冲突要素, 如绿坝事件中“网民”与“政府”的冲突, 杭州飙车案中“普通人”与“富二代”的冲突, 汶川地震“豆腐渣”学校中“家长”与“专家”的冲突。虽然主体和客体是网络媒体的叙事主干, 但实际情况却显然更加复杂, 网络媒体会利用更为丰富的矛盾与起伏跌宕的情节来为事件“添姿增彩”。

在石首事件中, 作为主体的当地群众与作为客体的永隆大酒店因为厨师的非正常死亡而产生冲突, 作为助手的网民掀起巨大的舆论浪潮, 而当地政府则作为不被相信的仲裁者, 承担了“对头”的角色。

此外, 网络媒体对立的叙事结构还可以从图1所示的标题中得到验证, 这些网络媒体均运用了矛盾手法对故事中的主体和客体进行清晰陈述。

在公共事件中, 网络媒体的标题叙述给网民的决不只是对立的双方那样简单。中国传媒大学教授曾庆香指出, 原型沉淀的意义在于“唤起了从人类的童年时期就隐藏、沉淀在人们心中最底层的某种经历、某种情感, 使似曾相识的经历得以重温, 让受到压抑的情感得到满足”。总之, 网络媒体将矛盾的双方呈现为某一种可以激起网民共同想象的原型, 是个人事件上升为公共事件的一个重要推动因素。

总结来看, 在公共事件中, 网络媒体进行原型沉淀主要有两种方法:第一种为角色的修辞倾向, 即向当事人添加有感情倾向的标签。电击治疗网瘾的杨永信在网络媒体中被称为“叫兽”;手持天价烟出席会议的南京市江宁区房产局局长周久耕被网络媒体广泛引用;杭州飙车案中受害者谭卓是一个走在人行道上的优秀青年。其实, 这些细节描述向公众塑造出角色背后的社会想象——周久耕被想象为贪污腐败官员的代表;谭卓则是为生活奋斗的普通人的缩影。

其实, 我们关注最牛钉子户, 是因为网络媒体将钉子户塑造为争取自己权利的英雄;我们关注姜岩死亡博客案, 是因为网络媒体将她塑造为温柔、善良、忠贞于爱情和家庭的传统女性;我们关注瓮安事件, 是因为网络媒体把孩子的死亡联系到地方政府的贪污腐败;我们关注北外香水女生, 是因为网络媒体将她塑造成不惜退学来反抗教育体制的斗士;我们关注南京男子彭宇, 是因为网络媒体将他塑造成新时代的“雷锋”。

选择叙事视角是第二种方法。叙事视角的不同选择可以构建出同一角色的不同形象, 对于原型沉淀的分析也尤其重要。在杭州飙车案之中, 网易最有影响的报道表面上是利用围观路人对跑车的描写来暗示车速之快, 实则是在选取有利于原型沉淀的叙事角度, 把肇事者推向了网友批判的中心。

>原型消除

网络媒体通过贴标签的方式唤起公众的集体记忆, 使整个事件也由个人遭遇演变为公共事件。而公共事件能够得到平息, 原因之一则在于网络新闻报道中人物标签的消解。

在石首事件中, 政府最终证明厨师死亡原因为自杀, 确无隐瞒之处。但是, 为什么政府的调查结果不被公众相信呢?因为最初的新闻报道和网络评论无一不把当地政府官员影射为昏庸腐败的无能之辈, 而死亡的厨师则是弱势群体。同时, 我们可以看到, 正是网络媒体的风口转向才使得双方的标签都得到了一定程度的消解。

腾讯网6月24日转载文章《公安部专家对石首死者尸检家属全程参与》、《湖北石首酒店再现尸体造谣者被查获》与《湖北省委书记省长亲赴石首平息群体事件》三篇文章, 试图重新建立公正和负责任的政府形象。至此, 政府在网民中的形象不再是腐败和说假话。

其实, 石首事件所经历的标签消解在很多公共事件中也可以看到, 例如北外香水女生事件最终被媒体证明是自我炒作, 网友一声叹息, 拂袖而去。杭州飙车案同样如此, 在事件的平息过程中, 媒体对于政府的报道也从“70码”的质疑声中走了出来。其间, 在网络转载率超过20次的新闻报道中, 一半以上都是以政府表态和积极解决问题为主要内容。例如《惊见杭州市领导要“铁腕”查处飙车案》 (转载30次) 、《杭州市委书记哀悼遇难者称对飙车超速等“零容忍”》 (转载88次) 、《杭州警方就飙车案70码说法向社会致歉》 (转载36次) 等。政府掩盖事实、接受贿赂的“标签”得到了一定程度的消解。

反观当事人双方, 对于谭卓父母的报道重点放在了113万的巨额赔偿金上。共有88家网站转载了新闻《杭州飙车案死者家属获赔百万肇事者可能获轻判》, 虽然新闻本身已经说明“民事归民事, 刑事归刑事, 两者是不同的程序, 法院仍旧会追究刑事责任”, 但新闻的标题还是暗示了收钱与轻判的必然因果关系。在新闻报道中, 谭卓的父母亲手消解了网友为谭卓张贴的标签, 而胡斌父母的形象也因下跪而被众多网友所讨论。至此, 网友的集体记忆被中止。

>政府对策

在网络世界中, 纷繁的信息和言论总会迷乱看客的双眼, 找到事件的真相并非网友个人力所能及。在这个高度媒介化生存的时代, 我们都要依靠媒介了解公共事件, 而网络的普及使得网络媒体的叙事结构不得不成为政府关注的重点。据上文分析, 我们认为, 政府应该着眼于以下四个方面:

积极消解既有原型。在公共事件中, 网友根据媒体报告的故事想象出一个原型, 然后组成行动的共同体。这个共同体之所以能如此强大, 是因为它有无穷的能量, 之所以能如此脆弱, 是因为它靠简单的标签, 而不是靠可信的事实构建而成。一旦标签被消解, 公共事件便随之失去了引起社会普遍关心并引发议论的魅力。正如杭州飙车案末期网友的普遍评论一样:事情不是我期待的那样, 也就与我无关。

净化网络不实报道。在中国当前的网络环境中, 一些网络新闻盲目追求点击率和轰动效应, 往往片段截取事实, 甚至歪曲事实。在公共事件中, 这样的媒体报道会误导舆论, 造成事件的进一步升级, 迅速制止这种不实报道, 对于公共事件的平息具有重大意义。

及时主动发布信息。面对一起公共事件, 媒体的第一反应便是寻求政府信源。但遗憾的是, 政府在众多公共事件之中并没有在第一时间发布信息, 或者发布的信息模糊不清。

结构化网络 篇9

当今社会是一个信息高速传播的社会。对于国家各级监管部门来说, 网络舆情监控已经成为其自身业务监管的一个重要组成。面对网络上海量的信息, 必须解决如何针对业务监管的特点对其中的热点信息进行收集这个问题。目前, 越来越多的人开始基于Heritrix等开源爬虫进行主题搜索的尝试。在文献中, 提出了一种结合遗传算法, 利用向量空间法来判断主题相关度的解决办法。本文在这些基础上, 对Heritrix进行了进一步的改进和优化, 将URL抽取的判断放入处理线程, 并利用HtmlParser对抽取内容进行结构化分解从而为舆情分析提供良好的业务扩展。

相关技术简介

Heritrix简介

2003年初, Heritrix由互联网档案馆和北欧国家图书馆联合开发完成。从其诞生至今, Heritrix不断被互联网档案馆及其他感兴趣的第三方组织改进。时至今日, Heritrix已经作为一个成熟的开源爬虫被广泛熟悉和使用。

Heritrix的原型是一个档案采集工具 (archival crawler) , 用来获取完整的、精确的站点内容, 并进行深度复制。Heritrix可以采集站点的所有相关内容, 包括站点中的图像以及其他非文本内容。虽然Heritrix实现了对内容“来者不拒”的采集及存储, 但是其对页面内容则不进行任何形式的修改。爬虫可通过Web用户界面启动、监控和调整, 并支持弹性的定义要获取的URL。

Heritrix的系统执行架构如图1所示。

其中主要的部分

1.边界控制器:主要确定下一个将被处理的URI, 负责访问的均衡出来, 从而避免对某一web服务器造成太大的压力。它保存着爬虫的状态:

※发现的URI (URIs have beendiscovered)

※正在被处理的URI (URIs arebeing processed (fetched) )

※已经处理的URI (URIs havebeen processed)

2.触足线程 (处理线程) :URI被一个ToeThread处理。处理交由一系列的处理器进行操作。

3.处理器:许多Processor组成一个处理链 (processor chains) 中, 每一个处理链对URI进行一系列的处理, 分析结果, 将它们传回给边界部件。

HTMLParser简介

HtmlParser提供了线性和嵌套两种方式来解析网页, 主要用于html网页的转换 (Transformation) 以及网页内容的抽取 (Extraction) 。HtmlParser有如下一些易于使用的特性:过滤器 (Filters) , 访问者模式 (Visitors) , 处理自定义标签以及易于使用的JavaBeans。

HtmlParser它是一个快速、健壮且经过严格测试的组件。本文基于HtmlParser提出了一套配置策略来实现对采集内容结构化分解。

基于关键词过滤与结构化输出的爬虫设计

基于关键词过滤URI的抽取思路

Heritrix本身提供的是archival crawler方式, 仅对目标地址进行采集归档。如果希望仅采集业务相关度高的内容, 需要在抽取的过程中按照一定规则对URI进行过滤。本文制定了相应的URI过滤策略:

(1) 基于URL的正则过滤。

网络上任意一个URI均包含一个统一资源定位符 (URL) , 用来描述其所在地址。通过对各类信息站点的分析, 几乎所有的站点对于站内资源均做过统一的目录/结构规划。这就意味着特定的目录/网络路径用来存放/访问不同的内容。比如, 新浪财经的内容全会出现在http://finance.sina.com.cn/下, 而体育新闻的根地址是http://sport.sina.com.cn/。可以看出, 面向新闻门户类的站点进行信息采集时, 通过对采集地址的过滤便缩小主题采集的范围, 从而大大减少对无用信息的收集。

(2) 基于标题的关键词过滤。

经研究表明, 网上信息的内容标题90%以上都直接反映了其文章内容主旨。因此在标题上对关键词进行过滤, 也可以提高信息采集的主题相关性。信息标题最早在页面分析时被程序接触, 它们包含在中。

但考虑到部分特例, 基于标题的关键词过滤策略可以当作为可选过滤规则。

(3) 基于正文内容的关键词过滤。

面对不同的主题设计不同的关键词组合, 通过全文检索技术来发现内容的匹配度。当匹配度大于给定值Τ, 该页面进入采集结果。

考虑采集队列的调度的处理压力, 正文的处理会将从抽取处理链中剥离, 放在后续处理链中进行。

采集内容结构化输出策略

传统的网络爬虫最终提供的是一份份存在硬盘上的HTML文件。作为一种文本文件, 在监管应用或是业务应用中都不方便被利用。但是, 任何互联网的信息均可以被结构分解。如:

新闻类信息需要包括:标题、发布日期、作者/来源、采集来源、正文、插图附件。

漏洞公告应该包括:漏洞ID、漏洞标题、发现日期、漏洞描述、严重程度、受影响的系统列表、解决方案、相关补丁信息、相关信息来源。

利用HTMLParser技术可以将上述信息的文本内容按其元数据描述进行分解, 并以XML格式结构化输出到本地。

系统设计与实现

前文中提到, 在Heritrix的运行架构中, 处理器 (Processor) 利用多条处理链 (Processing chain) 完成页面的分析、抽取、保存等工作。在诸多处理链中抽取处理链 (Extractor processing chain) 的功能是当提取完成时, 抽取感兴趣的HTML内容, 并发现新的URI。其后继的写处理链 (Write/index processing chain) 负责把数据写入本地磁盘, 存储爬行结果, 返回内容和抽取特性, 过滤完存储。因此要实现基于关键词过滤与结构化输出的爬虫需要对上述两部分内容进行扩展。

首先扩展ExtractorHTML, 对原来抽取正则EACH_ATTRIBUTE_EXTRACTOR进行修改, 去掉css和script引用的抽取, 仅对连接地址进行抽取。修改后的正则如下:

其中G r o u p (1) 为新的链接, Group (2) 为链接文字, 即标题。匹配出的内容可同时进行URL过滤以及标题关键词匹配过滤。代码片断为:

其次, 对于实现一个新的Processor负责采集内容的写处理。在写入硬盘之前调用页面Parser对内容进行结构化分解:

由于页面内容的结构化工作与采集的站点相关, 系统提供了一套配置策略来满足要求。

其中extractor-regx描述了URL的过滤规则, parser-bean指向了一个页面内容分析的处理类, 该类利用spring的IOC注入到程序当中。

实验设计及数据分析

系统采用Java语言实现, 机器环境为Open Suse 11系统, Xeon E55062.13GHz, 16G内存, 500GB×4 (Raid5) 硬盘, 通过10M科技网接入因特网。

采集策略设计

实验以新浪新闻科技频道、金融频道, 国家信息安全漏洞共享平台漏洞库为采集对象, 搜索深度为2, 线程数为50, 每6小时采集一次持续72小时。

关键词分为行业机构、灾害事件2类, 共计128个。二者之间为组合关系, 组合数量共2608组。过滤规则采用基于URL的正则过滤和基于正文内容的关键词过滤方式进行。

实验结果与分析

表1是实验结果数据。

从实验结果可以看出, 对URL地址进行过滤平均耗时在15毫秒左右, 由于正则规则的数量不同时间上略有出入;前两项采集数据各自对正文进行了2608组关键词组合过滤, 仅比无关键词过滤的任务多耗时400毫秒。

通过这组数据, 可以看出系统关键词过滤和结构化数据的处理效率较为优秀。在原有采集构架基础上加入的关键词过滤与结构化输出特性, 对处理效率上尚无太大影响。

另一方面, 实验数据中平均每次任务执行时间变化量过大, 与采集页面的数量成正比。其原因是Heritrix对写链的处理进行I/O保护, 避免一次性对硬盘大的量写入。

结束语

目前, 针对主题搜索引擎的爬虫系统正在受到越来越多的关注。基于关键词过滤与结构化输出的爬虫将成为各监管部门对业务内容进行舆情监控的一个主要手段。本文描述了一个基于关键词过滤与结构化输出的网络爬虫系统。通过对开源Java爬虫Heritrix的改进, 增加相应的处理器及配置策略, 使其得不单能够对采集内容进行过滤, 同时也可以对采集内容进行结构化输出。

注:最后一项采集内容仅建立索引, 无关键词过滤。

结构化网络 篇10

非结构化对等网 (peer to peer简称P2P) 是指网络上的计算机自主联接, 无需通过中心服务器, 点到点地相互提供资源与服务。P2P网络节点可以动态地加入与撤离网络, 而且每个节点共享的资源质量又可能有较大的差异, 节点的稳定性、计算能力等都应该纳入考量。早期非结构化的P2P网络搜索常采用洪泛法, 如著名的Gnutella网络。

Gnutella网络中的节点可以向它的所有邻居节点发出搜索请求 (query) , 这些邻居节点又向它的所有邻居节点传递搜索请求 (Query Hits) 。每个搜索包都有个TTL (Time to Live) 值, 搜索包每被转发一次, 其TTL值减1, 搜索包不断被转发, 找到指定资源或TTL=0。Gnutella网络中有两种节点, 普通节点与超级节点。超级节点用来发送消息广播, 并接受与其他超级节点交换信息。网络服务原语包括Ping (主动连接) 、Pong (响应连接) 、Query (搜索请求) 、Query Hit (传递搜索请求) 等。可以看到, 洪泛法没有用节点本身的信息来指导搜索, 带有很大的盲目性。网络负载大, 搜索效率不高。

本文将主要研究基于节点服务质量 (包括节点资源信誉度和节点能力信誉度) 的搜索算法, 该类路由问题可以归结为, 满足节点能力信誉度要求同时又满足查询资源相似度阙值的路径寻优。此类问题是一类NP-C问题, 本文将讨论上述约束条件下的P2P路由选择策略。

1 非结构化对等网络优化模型

目前相关研究较多地集中在P2P网络的资源搜索优化方面。如文献1在讨论蚁群算法在资源搜索方面的应用基础上, 提出一种“信息推荐”机制[1]。资源持有者定期地向其邻居节点 (或其他曾向该节点发出搜索请求的节点) 推荐其共享的资源信息。该方法在一定程度上减少了资源搜索的盲目性, 但这种“兴趣推荐”的机制势必增加网络负载。文献2在研究蚁群算法在P2P网络资源搜索方面的应用的基础上, 提出了信息素多样化的思想。为了防止不准确信息的误导, 该文中算法将搜索资源信息分类, 根据接受到的数据包在上一条中的文件类型选择本节点与其相似度最大的资源类型, 在根据“同类最优路径信息素在节点路由表里选择下一跳[2]。文献3提出建立共享资源与拓扑之间的统计关联, 在此基础建立一种新的基于层次化兴趣的拓扑形成模型, 研究的是应用蚁群算法解决P2P网络上的Qo S路由问题[3]。文献4从网络节点的可靠性 (“诚信度”) 来研究路由巡优问题。主要思想是通过交互节点的局部评价加权其推荐可信度来计算节点的全局信誉度值, 采用基于时间帧的方法更新节点的全局信誉度值和推荐可信度[4]。文献5从网络节点的“活跃程度”与“资源命中数”来估算下一个节点选择的概率, 一定程度上减少了冗余查询, 节省了网络带宽[5]。但单纯地考虑“活跃程度”有可能把查询包转到与查询资源请求不一致的节点上;另外笼统地用“资源命中数”也不足以表示与查询意图的一致性。

1.1 Gnutella模型

早期的非结构化P2P网络以Gnutella模型为代表。采用的就是洪泛协议。其路由算法简单有效, 基本思想是每个节点在第一次收到数据报文时, 都将其转发收到邻居节点上。若收到重复分组则直接丢弃。为了避免转发的报文占用过多的网络资源, 需要给每个报文设定合适的TTL值, 保证数据分组只经过有限次数转发。如图1所示, 其中A是源节点, G为目的节点, 现在节点A发出搜索请求q, 数据包分别发到其邻居节点B、C、D。当三个邻居节点收到该路由请求后, 同样将数据包转发给其所有的邻居节点, 此时D节点均收到分别来自于节点A、E和H发送过来的同一数据包, D将转发先到的数据包给其所有的邻居节点, 后到的数据相同的数据包将被丢弃, 如果在节点F、G、H都同由A点发出的查询请求中相近的共享资源, 但这三个节点的处理能力, 共享资源的“好”“坏”程度和源节点的查询要求都要在选择路由时加以考虑。

1.2 节点能力信誉度 (Node Credit)

在非结构化对等网中, 节点不受拓扑结构和中心服务器的限制, 可以自主地加入与撤离网络。有些节点稳定, 可以提供较好的服务质量, 有些节点计算性能较差或缺乏优质共享资源甚至传播恶意数据。因此可以用节点的能力信誉度来评价节点的“好”与“坏”。信誉度是某一节点依据与邻居节点的数据交换历史, 对其信任程度所做出的一种主观评判。比如节点v对节点u的评价可以定义如下:

其中Ei (v, u) 是节点v对节点u的第i次交互的评价满意度。n为交换次数。这样节点u的信誉值可以通过直接与其交互的节点对其的局部评价加权获得。

节点信誉度是一个评估时间的函数。设评估周期为T, 节点信誉度更新公式构造如下:

动态的更新节点信誉度可以更真实地模拟实际P2P网络中节点的动态变化情况。

1.3 资源信誉度

节点的资源信誉度取决于其共享资源的质量。而资源的质量又与搜索请求的关键字与资源相似度有关。一般资源的相似度可以如下定义。在P2P网络节点上提供优质资源的节点可能有多个。因此结合其他约束条件路由方案可以有不同的选择。

查询q的向量空间模型可以表示为 (w1, q, w2, q, …, wi, q, …, wt, q) , 其中wi, q表示关键字keyi在q中的权重。资源r可以表示为 (w1, r, w2, r, …, wi, r, …, wt, r) , 此时r与q的余弦相似度可以定义为:

相似度值为0~1之间的一个数。如果某个资源相似度大于设定的阈值, 可以认为r满足q。因此对于不同的请求q, 节点可以有不同的资源信誉度。笼统地考虑该节点的下载总量来度量节点的信誉度是没有意义的。对于请求q, 节点N的资源信誉度可取sim (r, q) 中的最大值。

2 算法讨论

2.1 节点能力信誉度

本文讨论的P2P网络不像Gnutella那样采用超级节点。这样网络环境更贴近真实的互联网环境。在各节点上, 本地资源信誉度可以在共享时指定有个[0 1]之间的一个初值。该值的更新可以定时进行或者由事件驱动进行评价更新。直接相邻的节点的信誉度采用事件驱动机制进行。当有节点加入网络时, 向其相邻节点发生共享资源的信誉度, 或者在节点之间互访时有Query Hit包反馈时, 更新邻居节点的某种资源信誉度。

2.2 资源搜索

用户搜索包Query中的关键字反映了用户的“兴趣”。兴趣向量 (w1, q, w2, q, …, wi, q, …, wt, q) 。可以构造兴趣搜索表来指定搜索, 如表1所示。

下面以图1为例, 说明本文算法。

搜索步骤如下:

步骤1:节点加入网络, 初始化信誉度表, 并与邻居节点交换数据。

步骤2:节点A发出搜索请求q, 设置TTL=3。首先根据其关键字key在本地资源列表中搜索, 如果没找到, 则根据该节点信誉度表, 依次向邻居节点B、C、D发出搜索请求。这里又分下面几种情况:

(1) 在缓冲区中没有某查询数据包, 并且收到的数据包TTL值不为0, 则向邻居节点转发数据包。

(2) 对于再次收到的相同的查询数据包, 直接丢弃。如果节点上邻居信誉度表里没有比本节点更好的节点, 则本节点作为待选节点, 与源节点建立下载链接。否则继续转发查询数据包。

(3) 对于TTL=0的查询数据包如节点H上收到来自源节点A的查询包, 直接丢弃。

步骤3:源节点在得到的三个资源节点F、G、H上根据查询约束条件择优选择路由。

各节点在时间周期驱动下, 动态更新邻居信誉度表。

3 结束语

本文提出一种基于节点服务质量的非结构化P2P网络的搜索算法。该算法由于采用动态的节点指标来指定路由选优, 减少了洪泛法的盲目性, 降低了网络流量负载。如果对资源进行“兴趣”分类与挖掘, 将可以更有效地指导路由优化, 这正是课题要继续研究的目标。

摘要:在非结构化对等网络资源搜索算法中, 多数着眼于网络负载和搜索效率方面, 节点本身的稳定性、计算能力、资源的优劣也应该是在搜索路由寻优中要考虑的重要因素。构造新的搜索算法, 通过量化节点的服务质量用于指导路由, 该算法简单易于实现。

关键词:非结构化对等网,节点服务质量,路由

参考文献

[1]李绍滋, 曹阳, 周昌乐.基于非结构化的P2P信息检索关键计算研究[J].智能系统学报, 2006 (2) .

[2]赵宏, 谢伟志, 张晨曦.基于蚁群算法的非结构化P2P搜索研究[J].计算机技术与发展, 2009 (2) .

[3]周晓波等.一种基于层次化兴趣的非结构化P2P拓扑形成模型[J].Journal of Software, 2007 (12) .

[4]陈作汉.直接评价节点诚信度的P2P动态信任模型[J].计算机工程与设计, 2011 (7) .

结构化网络 篇11

【中图分类号】G 【文献标识码】A

【文章编号】0450-9889(2012)09B-0020-02

一、CPFS结构

南京师范大学喻平、单墫教授认为,数学学习心理中的CPFS结构恰当与否,是学生学习了一个命题,特别是一组命题后,是否会灵活应用这些命题的一个主要因素。如果学生正确理解了一个命题或命题组,他会在头脑中建立一个正确、良好的CPFS结构;但如果这个结构中有一个命题或结点联结不正确或不透彻,则会影响这一组命题,以及相关的另一组命题的学习。他们把这一连串具有相关特征的命题,称为概念域,并提出了概念系理论。

概念域:一个概念C的所有等价定义的图式,叫做概念C的概念域。具体地说,一个概念C如果具有某些等价定义(知识),那么这些等价定义会在学生头脑中形成知识网络。每一个等价定义都是对概念C的描述、定义和解释,这些等价定义可以从不同的角度、不同的突破点对概念C的内涵进行表征,使概念C在学生头脑中呈现多种表征方式。由于不同的表征利于喜欢不同表征特点的学生对概念C进行理解、转化,因此能使学生对概念C的表征转化更多方位、多角度、深层次,能丰富、巩固概念C在学生头脑中与其他知识概念之间联系的强度,使得学生的知识网络更紧密。

概念链:如果一组概念C1,C2,…,Cn存在关系:C1 R1 C2 R2…Rn-1 Cn (*),其中Ri(i=1,2,…,n)表示强抽象、弱抽象、广义抽象这3种数学关系中的任意一种,那么称(*)为一条概念链,记为λ={C1,C2,…Cn}。

概念系:如果两条概念链之间有交集,则称这两条链相交。如果m条概念链中至少有一条与其余的概念链都相交,那么称这m条概念链的图式为概念系。概念系是个体头脑中形成的概念网格。

由概念域(系)推广,可得出类似的命题域与命题系理论。

命题域:由若干等价命题组成,同概念域一样,这些等价命题的表征特点各有不同,利于有各种不同思维特点的学生吸收。

命题系:同概念域类似,命题域是命题系的子图式。

概念域、概念系、命题域、命题系形成的结构称为CPFS结构。

CPFS结构的组成元素有:(1)数学知识,包括概念和命题两种形式的知识。学生将这些基本的概念和命题内化吸收后,根据它们不同的特点,将它们分布在CPFS结构中的各个位置,形成一些基本的分散的点状图;(2)知识结构图。学生的头脑,能根据已被吸收的概念、命题的表征特点,寻找它们相互之间的联系,即各种抽象关系(强抽象关系或弱抽象关系),根据这些关系将分散的概念(命题)点相互联结起来,形成一个网状的知识结构图。一个良好的CPFS结构图,不仅要有准确的基本知识点,还要有丰富的、紧密联结各基本知识点的抽象关系。这些抽象关系中包含了对知识特征的理解。

如果学生头脑中CPFS结构的域广系宽、链多结密,在解决问题时,学生就能够较容易地通过抽象关系在结点中提取核心命题,从而解决问题。但由于抽象关系是不明显的,所以如果学生没有形成完善的命题域和命题系,CPFS结构疏松、结点少、链条稀,那么在解决问题时,他们就不能及时、有效地在命题域或命题系中调用适当的模式,从而使欲解决的问题难度加大,或者无法解决问题。事实上,在一组等价命题中选出某些命题去解决不同的问题,理论上说是等价的,但解题的难度却大相径庭,这和结点是否丰富关系极大。

二、二次函数应用题的CPFS教学分析

在教学二次函数的定义、图像与性质之后,二次函数应用题是教学的重点,也是学生学习的难点。在义务教育课程标准实验教科书(人教版)2009年版的《实际问题与二次函数》一节中,提出了三个典型例题:

1.(利润问题)某商品现在的售价为每件60元,每星期可卖出300件。市场调查反映:如调整价格,每涨价1元,每星期要少卖出10件;每降价1元,每星期可多卖出20件。已知商品的进价为每件40元,如何定价才能使利润最大?

2.(图形问题)计算机把数据存储在磁盘上,磁盘是带有磁性物质的圆盘,磁盘上有一些同心圆轨道,叫做磁道。现有一张半径为45mm的磁盘。

(1)磁盘最内磁道的半径为r mm,其上每0.015mm的弧长为1个存储单元,这条磁道有多少个存储单元?

(2)磁盘上各磁道之间的宽度必须不小于0.3mm,磁盘的外圆周不是磁道,这张磁盘上最多有多少条磁道?

(3)如果各磁道的存储单元数目与最内磁道相同,最内磁道的半径r是多少时,磁盘的存储量最大?

3.(桥拱问题)下图是抛物线形拱桥,当水面在l时,拱顶离水面2m,水面宽4m。水面下降1m时,水面宽度增加多少?

以上例题中,第1、3题为二次函数的典型例题。一般教师遵照课本进行教学,讲解典型例题,拓展典型范围,让学生见多识广,以增加学生的知识网络范围和网络结点,增强学生的理解能力和解题能力。大部分学生在学习了典型例题之后,能根据老师所教授的典型题的解题过程模仿做题。但笔者发现,对于很多学生而言,做类似的题目行,做变式的题目就束手无策了;做练习的时候行,考试的时候就不会做了。

根据CPFS结构理论去分析这一现象:在常规教学下,学生能根据教师教授的知识,存储相应的概念、命题,能按题目的属性归类,形成相关的二次函数知识网络,编排图式;但在学生的二次函数应用题这一部分知识网络中,许多学生的学习为平行式学习,虽然有图式,但结点少。通俗地讲,就是学一题做一题,变式及强抽象(归类)的能力较差,以致考试时不会做。

以上分析证明了“在一组等价命题中选出某些命题去解决不同的问题,理论上说是等价的,但解题的难度却大相径庭”。

可见,教师如果只是平行地教授某几种题目的解题,那么学生学会的解题也只是“依葫芦画瓢”,没有综合,没有归纳,图式没有网络,CPFS结构中没有结点。这样学生的考试成绩就上不去,怎么办?如何增加网络中的结点?如何使平行式的网络图式相互联系?教师应当如何教学,才能使学生头脑中的CPFS结构更加紧密?二次函数应用题涉及范围广、类型多,如何教学才能增强学生对二次函数的理解,使学生的应用更加熟练?特别是上复习课时,怎样才能在有限的课时中使二次函数应用题的归纳、分析更全面、有效?为了解决这些问题,笔者在实际教学中,对二次函数应用题进行与以往不同的分类法复习。

常规复习跳绳问题、球类飞行问题、桥拱类建筑问题、面积或利润最大问题等典型例题。

常规学习下的个体CPFS结构为:

λ1={绳索问题1?绳索问题2?…?绳索问题n},

λ2={球类问题1?球类问题2?…?球类问题n},

λ3={建筑问题1?建筑问题2?…?建筑问题n},

λ4={面积最大问题1?面积最大问题2?…?面积最大问题n},

λ5={利润最大问题1?利润最大问题2?…?利润最大问题n}。

在这几条命题链中,每条命题链的第1个命题均为本命题链的典型命题,课本编排的例题就是给出这些典型命题,让教师在教学过程中将其进行拓展。一般地,我们可以根据若干问题的典型命题,在同命题链中进行拓展教学,加大命题链的长度,但这些命题链之间是否有非空交集呢?如果m条命题链中的每一条都至少与其他的一条相交,那么称这m条链组成的系统为半等价命题网络。一个半等价命题网络的图式是一个命题系。如果能在这些命题链之间寻找到一条与之都相关的链,使之成为一个命题系,那么学生头脑中的网络强度必将大大增加,以上这几条命题链相互之间就存在着与之都相交的命题链。

ω(抛物线型问题)={λ1,λ2,λ3},

ω(二次数据/非抛物线型问题)={λ4,λ5}。

也就是说,我们可以把所有的二次函数应用题,分类为抛物线型问题与非抛物线型问题(如课本例题3)。具体的抛物线型的应用问题可用以下口诀来概括:

门洞、桥拱和隧道,

篮球、足球乒乓球,

绳子会不会打到头。

其他的是题中没有出现抛物线,但在数据分析计算中,变量间出现二次函数关系的问题(如课本例题1、2)。对这些题也可以编排出以下口诀:

周长不变面积变,

固定形状求面积;

销售利润有技巧,

如何定价才最高?

当我们如此重组了二次函数应用题的题目类型之后,大量的二次函数应用题即被归纳到两条命题链中,形成命题系。在这些命题系中,我们又可以再次抽象出较强的数学关系,再从抽象的数学关系中寻找到联结的数学方法。学生从不同的角度、不同的背景再去理解同一个命题、概念,便加强了命题链之间的联结,有效地完善了命题系,提高了在命题系中调用方法、模式的速度,从而提高了解题能力。

三、小结

由于年龄、经验、时间、能力的关系,只有少数学生能在学习的概念、命题中主动建构CPFS结构,他们的概念系、命题系之间及其内部的网络联结,有自然生成的部分,但更多的是由教师教学引导生成的部分。教师如何教学才能使学生的CPFS结构域更加广阔,使其中的结点联结更紧密,使弱抽象关系过渡为强抽象关系……这些都是教师需要在实践过程中探讨的问题。所有的教学、研究都离不开学生的实际学习,所有的教学、研究结果都要应用在学生的实际学习中。CPFS结构理论已是较成熟的教学理论,本文谈的只是它在一个教学环节中的应用,还有更多的相关教学问题,等待我们去思考、探究。

结构化网络 篇12

随着网络技术的飞速发展和普遍应用, 目前出现了诸多的复杂系统, 这些系统中包括着诸多的个体, 这些个体各自是独立的, 但是相互之间又会产生作用, 为了更好地建模和分析复杂系统, 就有专家提出了多Agent系统。另外, 如今软件系统种类越来越多, 出现了诸多大规模复杂的软件系统, 那么人们就提出了软件系统的构建工作由多Agent系统来完成, 以此来更加科学有效的管理这些复杂的软件系统。

2 网络结构化多Agent系统中任务分配的特点

随着科学技术的发展, 如今在网络中开始更加广泛的应用多Agent系统, 因此, 在计算机网络中, 经常会运行那些较为复杂的多Agent系统, 那么我们就用多Agent系统的底层网络来称呼多Agent系统所运行的物理网络, 因此, 就有两种网络存在于网络结构化多Agent系统系统中。

当有任务需要多Agent系统执行时, 需要向合适的Agent分配这些任务, 执行工作也由这些Agent来完成, 这里就是我们所说的任务分配。具体来讲, 任务分配的目的就是促使系统执行任务的综合性能得到较大程度的提升, 如促使总任务执行时间得到降低、系统执行任务的总通信耗费得到降低以及促使执行总收益得到提高等等。传统的任务分配方式是自有资源的分配方式, 指的是在分配时, 主要结合的是Agent的资源和能力;简单来讲, Agent获得越多的资源, 就越有可能获得任务。

但是, 在任务分配的过程中, 会在一定程度上受到多Agent系统网络结构化的影响, 如果改变了底层网络的拓扑结构, 那么就会一定影响到Agent之间的通信耗费, 因此, 在任务分配的过程中, 就需要对底层网络的拓扑结构充分考虑。另外, 因为Agent之间的网络结构化组织是交互型的, 那么其他交互网络也会在很大程度上影响到Agent任务执行过程中的协商和协调;因此, 其他的交互网络, 也是任务分配时需要考虑的重要因素。

3 基于底层网络与资源分布的任务分配

一是问题描述:通过研究发现, 会有动态变化存在于多Agent系统运行底层网络的拓扑结构中, 那么在多Agent系统的运行过程中, 就会有一些结点加入到底层网络中, 或者是底层网络中的某些结点离开, 还会在一定程度上改变结点之间的距离;因为在网络中, Agent的分布位置也不是固定不变的, 因此, 结合动态变化存在于底层网络拓扑结构的情况, 就可以自适应调整多Agent的任务分配机制, 对这些变化进行有效的适应。有专家经过深入研究, 开发出来了一种负载均衡算法, 这种算法的基础是通信的任务分配, 将Agent和主机之间的关系以及主机之间的通信因素充分纳入了考虑范围, 这样就可以促使不同主机之间的任务负载均衡得以实现。

二是任务执行中的资源协商:在向某一个Agent子集分配过任务之后, Agent要想对任务执行, 需要对相关资源进行调用。但是在一些因素的影响作用下, 这些被分配任务的Agent在资源方面可能不足够, 无法对任务进行有效的执行。因此, 为了对资源短缺和冲突问题进行有效的解决, 就需要将Agent之间的资源协调机制给充分利用起来, 促使工作任务能够得到有效执行。上文我们已经提到, Agent要想从其他Agent那里借调资源, 只需要利用资源协调机制即可, 但是如果临界资源在同一时间内被诸多Agent所争夺, 造成资源冲突问题的出现。针对这种问题, 有专家提出了分等级迭代冲突解决方案, 这种方案将任务优先权等级给继承了下来, 同时, 为了解决资源冲突问题, 还提出了一种迭代方法, 在借调资源方面, 是按照Agent执行任务优先权的高度来进行的。

4 基Agent交互网络与资源分布的任务分配

在NMAS中, 可以利用图的形式来表示Agent之间的交互组织, 其中Agent由结点来表示, 那么Agent之间的交互关系就由结点之间的边来表示, 那么交互网络指的就是Agent之间的交互组织关系;通过研究发现, 在这种图状的交互网络中, Agent所交互的对象只是那些交互网络中临近结点所表示的Agent, 因此, Agent在交互网络中所处位置将会直接影响到Agent的交互性, 因为会对其交互对象产生影响。那么我们就可以得知, 在交互网络组织中, Agent不需要对所有Agent的信息进行感知, 只需要对本网络中临近Agent的局部信息进行感知即可。

5 结语

通过上文的叙述我们可以得知, 如今在网络中开始更加广泛的应用多Agent系统, 网络结构化多Agent系统中任务分配比较的复杂。本文简要介绍了网络结构化多Agent系统中任务分配的特点, 然后从两个方面探讨了网络结构化多Agent系统中任务分配的原理, 希望可以提供一些有价值的参考意见。

参考文献

[1]蒋嶷川.网络结构化多Agent系统的任务分配[J].模式识别与人工智能, 2012, 2 (2) :123-125.

[2]高锷, 赵福民, 张勇.一个基于CORBA的多Agent系统框架[J].组合机床与自动化加工技术, 2001, 2 (11) :87-89.

上一篇:分布区域特征下一篇:局域网域的管理控制