求救高手!! 请分别解释移动代理的三种定位方式:广播,转交指针和宿主机...
发布网友
发布时间:2024-07-03 20:42
我来回答
共1个回答
热心网友
时间:2024-07-21 12:29
一:广播通信定位方案
如基于共享总线或基于局域无线网络上的计算机本身就以广播通信为基本通信手段,我们就可以采用“广播” 方式在整个命名空间里与移动代理直接对话
由于广播通信覆盖整个命名空间,空间里的每一台计算机都必须运行一个局部定位服务进程。一旦该进程接收到广播信件,就检索自身所管辖的实体名字记录,如果发现所需实体,立刻把信件转发给它;否则就对该信件置之不理
当网络规模扩大时,广播通信的效率就越来越差。如果一个分布式应用频繁地发出通信请求,这些请求不仅大大增加了网络负载,而且网络上所有的计算机都要忙于应付定位检索服务,而无暇顾及正常的分布式计算
二:转交指针方案
转交指针是一个迁移的实体在原地留下一个到达新地址的指引元 。其优点是简单易行,适用于各种网络结构
缺点:
如果一个移动软件代理频繁地迁移,它所留下的转交指针就形成一条越来越长的链,与这个软件代理的通信就非常昂贵,因为链中的每一台服务器都要把信件转交到链中下一台服务器,直到链的终点。
命名空间里的每一台服务器都要维护一个(庞大的)转交指针数据库,只要它所服务过的软件代理还在命名空间里活跃着,就不能把对应的转交指针记录删除。
如果命名空间里的某台服务器发生故障,或者它所管理维护的转交指针记录发生错误,则一些转交指针链就被断开
如果一个移动代理不停地迁移,而以它为接收者的信件用相同或稍慢的速度对其追踪,则这封信件永远无法到达
三:基于宿主机的方案
当一个移动软件代理应用程序开始运行时,它所在的那台计算机(服务器) 就称为宿主机(宿主服务器),而且它派生的所有软件代理,无论迁移到何处,都以最先启动应用的那台计算机为宿主机
这台宿主机为每一个应用程序管理维护一个数据库,存放所有属于该应用程序的软件代理的当前位置(地址) 。每当一个软件代理迁移时,它都必须向宿主机汇报迁移后的新地址 。宿主机方案在概念上已经不属于分布式模型,而是一种以应用为基本单位的中央管理机制。其优点是简单 。
本来点对点的通信变成一种“中介” 通信,即每一封信件都必须通过宿主机中转,于是增加了额外的通信开销。
不能保证宿主机里的地址记录提供实时准确位置。当宿主机查询到某个移动代理的地址并开始转发信件时,那个移动代理可能已经迁移到另一台服务器,而它向宿主机汇报新地址的信件正在途中。