Mobile Agent Communication

Slides:



Advertisements
Similar presentations
熱烈歡迎 各級長官 貴賓 全體會員 蒞臨會場.
Advertisements

教育部 輔導教官:林家豪 年度育達商職紫錐花運動 強化反毒健康小學堂輔導課程 簡 報.
教务处 年夏季大学英语等级考试 六级监考注意事项. 教务处 2 (一)本次考试基本情况 科目人数考场数 英语六级
“现代教育技术”课程组 制作: Zhang Jiahua
XX啤酒营销及广告策略.
大学计算机基础—— 系统工具与环境 (理工科用) 赵 欢 肖德贵 李丽娟 洪跃山 编著.
报检实务.
32个团体游戏 增加团队凝聚力.
「鬧鐘媽媽」vs.「教育媽媽」 談管教兒女的方法
新約研讀 彼得前書複習 讀經組
从永磁体谈起.
教學檔案的製作、評量與應用 連安青、游可如 國立東華大學附小教師.
2014口号“千万别将就,喜欢就表白。” ——超级光棍节全民脱“光”大行动
行政法 之 行政救济篇.
计算机基础知识培训 信息所网络研究室.
地方教育發展基金執行實務 王麗真、江明君、魏珮如 1.
订单合并拆分功能详解 荷叶.
彭江波.
ARP二期综合财务管理系统 网上报销用户培训
尾矿库综合调查 金属非金属矿山尾矿库安全技术中心.
电磁铁.
计算机网络教程(第 2 版) 第 7 章 网络互连 课件制作人:谢希仁.
第四章 网络层 网络层 网络层 网络层 网络层 网络层.
智 修身养性小 识 习惯篇 饮食篇 运动篇 心态篇.
新进人员成果交流汇报 规划计划处 俞深彦 2014年8月
中部科學工業園區台中園區擴建 用地(原大肚山彈藥分庫)開發計畫
休閒農場籌設審查與核定 分享人:湯惠媄 (2-1).
第八課 蓼莪.
初中语文总复习 说明文 阅读专题 西安市第六十七中学 潘敏.
初中语文总复习 说明文 阅读专题.
自考英语二.
跳楼价 亏本大甩卖 清仓处理 买一送一 5折酬宾. 跳楼价 亏本大甩卖 清仓处理 买一送一 5折酬宾.
清仓处理 跳楼价 满200返160 5折酬宾.
微孢子虫生物研究.
第9周 DHCP的安装与配置 计算机网络基础.
提示语、广告词 颁奖词、衔接语 感谢信、通告启事 图文转换
走自立自强之路 自己的事情自己做.
人類的循環系統.
不動產市場 分析與預測 第四章 不動產市場分析與研究.
教育者,寂寞之事业,而实为神圣之天职,扶危定倾,端赖于此,有志者固不以彼而易此也。
关于财务报账的 相关规定 中国科学院南海海洋研究所 资产财务处.
北师大版七年级数学 5.5 应用一元一次方程 ——“希望工程”义演 枣庄市第三十四中学 曹馨.
海洋存亡 匹夫有责 ——让我们都来做环保小卫士 XX小学三(3)班.
學校教職員退休條例修正草案重點報告 報告人:徐創晃.
拿 法 常晓波博士 Mobile:
本 章 重 點 18-1 Internet的由來與對生活的影響 18-2 Internet的服務與相關名詞簡介 18-3 IP位址表示法
1-1 電腦的起源 1-2 電腦的演進 1-3 電腦的種類 1-4 電腦與生活
ARP, RARP & ICMP.
VANET & Routing.
「寬頻匯流網路管理」教材 模組四: 第一章 網路管理架構
DHCP 详解及在 AP 中的使用 韦宇轩 SA
基于移动代理的分布式 入侵检测系统 太原理工大学网络信息中心 任新华 2019/2/22.
通信工程专业英语 Lesson 22 The Internet 第22课 因特网
青少年常見犯法行為.
Object-Oriented Technology: Review and Conclusion Remarks
藝術大師-達利.
IEEE Computer Society 長亨文化事業有限公司.
_01基本概念扫盲 本节课讲师——void* 视频提供:昆山爱达人信息技术有限公司 官网地址:
高三家長升學講座 「個人申請」審查資料準備方向
多媒体技术 中南大学信息科学与工程学院 黄东军.
教師專業與權益相關法令 報告人 劉亞平.
Chapter 10 Mobile IP TCP/IP Protocol Suite
第三章 世界文明的蛻變與互動 第一節 歐洲社會的蛻變 第二節 世界文明的交匯 第三節 亞洲大帝國的發展 1.
Mobile IPv4.
IEEE Computer Society 智泉國際事業有限公司 2019年5月14日.
工业设计教研室 主讲教师:李明 Mobile: 教学主楼1385室
DNS CACHE POISONING A 曾子桐 指導教授: 梁明章.
知识点4---向量的线性相关性 1. 线性相关与线性无关 线性相关性的性质 2..
§1.3.3 地球公转的意义 ——昼夜长短的变化 凤阳县第二中学 柳家全.
利用十字交乘法將二次多項式化為兩個一次式的乘積。
Presentation transcript:

Mobile Agent Communication Software Agent 余萍 yuping@nju.edu.cn

Outline Agent协作 通信框架 层次式通信框架 通信再思考 5/7/2019 Institute of Computer Software, Nanjing University

Agent协作 软件agent为大规模网络异构应用系统提供了一种新的计算模式 5/7/2019 Institute of Computer Software, Nanjing University

Agent协作 协作的目的 合作 管理 交流 协同 有限知识 vs. 复杂需求 Agent管理 感知、交换 内在依赖关系导致:同步、异步、组协同 …… 5/7/2019 Institute of Computer Software, Nanjing University

Agent协作 协作的技术需求: 功能互通 协作联盟及模式 通信机制 协作的方式、方法 通信机制 具体的信息/知识交换 5/7/2019 Institute of Computer Software, Nanjing University 5

Agent协作 研究现状 功能互通 协作联盟/模式 通信机制 涉及语义处理 XML,ontology,语义网络 基于集中管理的组织模式 基于分布协同的合同网模式 通信机制 基于知识交换的KQML等工作 基于消息传递的工作 5/7/2019 Institute of Computer Software, Nanjing University 6

移动Agent通信框架 移动agent通信机制研究需求 支持多层次通信 解决移动环境下的寻址问题 保障移动环境下的通信可靠性 5/7/2019 Institute of Computer Software, Nanjing University 7

移动Agent通信框架 Agent之间的信息交流: 数据传输: 消息传递: 知识交换: 弱化数据处理逻辑 强调通信效率 数据和处理信息同时传输:简单的数据加工(信息) 较好的灵活性和较强的处理能力 知识交换: 更高的抽象层次,更利于进行复杂的协作 较高的表达要求 信息载体,计算机操作对象;意义;规律表示,一类问题的抽象 5/7/2019 Institute of Computer Software, Nanjing University 8

移动Agent通信框架 分层多模式通信框架 移动agent KQML/XML 间接访问模式 直接访问模式 Operating System通信层 直接访问模式 间接访问模式 KQML/XML 移动agent 5/7/2019 Institute of Computer Software, Nanjing University 9

移动Agent通信框架 直接模式 间接模式 KQML/XML 基于网络协议的数据传输 以消息传递为通信手段 基于知识交换的高层协作语言、协议和模式 5/7/2019 Institute of Computer Software, Nanjing University 10

移动Agent通信框架 框架的使用 研究主要集中于间接访问层 提供每一层丰富的API Agent可以使用任意一层进行通信 每一底层都向紧邻上层提供实现支撑 每一层都提供可选的安全保障 研究主要集中于间接访问层 5/7/2019 Institute of Computer Software, Nanjing University 11

移动Agent通信框架 间接访问层设计需求 名设计 透明寻址 可靠通信 5/7/2019 Institute of Computer Software, Nanjing University 12

系统支撑-名设计 名设计需求: 命名唯一性 支持寻址透明性 支持用户使用友善性 Internet范围内 保证唯一性的两种方式: 静态唯一性:agent被创建时就获得一个全局唯一的名 动态唯一性:agent被创建时获得一个局部唯一名,移动后到达一个新的结点后再根据当地结点信息确定一个当地局部唯一的名 支持寻址透明性 随机的移动带来突出的寻址问题 通常:中间机构、名解析 支持用户使用友善性 支持用户名使用 5/7/2019 Institute of Computer Software, Nanjing University 13

系统支撑-名设计 名设计:逻辑名和物理名双层名的命名机制 用户使用逻辑名通信 逻辑名不变,物理名可变 系统提供逻辑名至物理名的映射 逻辑名 创建节点主机IP(域名):符号名 当前节点主机IP(域名): ID号 逻辑名 物理名 5/7/2019 Institute of Computer Software, Nanjing University 14

系统支撑-名设计 实例: 202.119.49.111:BookBuyer 202.119.58.198: 1794 这种双层名的命名机制可以保证agent的命名唯一性要求,同时也动态反映了agent的位置变化,记录了当前的物理位置和标识,为移动agent的管理和通信奠定了良好的基础。 5/7/2019 Institute of Computer Software, Nanjing University 15

寻址 Home-communicator通信模型 Mobile agent Server home communicator 5/7/2019 Institute of Computer Software, Nanjing University 16

寻址 Home: 记录该节点上“出生”的agent的动态信息 发生agent迁移时,需要即时信息更新 Agent迁移必须通知其“home” 5/7/2019 Institute of Computer Software, Nanjing University 17

寻址 Communicator: 记录当前Host上的所有agent的信息 Agent迁移时应该register & unregister 例: mogentManager.Register(mogent); mogentManager.unRegister(mogent); 5/7/2019 Institute of Computer Software, Nanjing University 18

寻址 寻址示例: Agent A  B:send(B,M) A、B同在一个节点:本地通信 A、B不在一个节点:远程通信 A的名:A:202.119.36.170/10022:202.119.36.131 B的名:B:202.119.36.136/10027:202.119.36.131 A、B不在一个节点:远程通信 A的名:A:202.119.36.170/10022:202.119.36.130 B的名:B:202.119.36.136/10027:202.119.36.135 5/7/2019 Institute of Computer Software, Nanjing University 19

寻址 A:send(B,M) B A 202.119.36.131 得到B,M 查B在本节点 将M交给B Agent列表: A:202.119.36.170/100232:202.119.36.131 B:202.119.36.136/100247:202.119.36.131 5/7/2019 Institute of Computer Software, Nanjing University 20

寻址 A的名:A:202.119.36.170/100232:202.119.36.130 B的名:B:202.119.36.136/100247:202.119.36.135 A 202.119.36.130 M A:send(B,M) 202.119.36.136 0:截获通信请求 1:发现B不在本地 2:向B的出生地136请求B的当前位置 3:136上的communicator接受请求,向Home查询,得到B的位置为135 4:向130上的communicator回复:135 B M 202.119.36.135 5/7/2019 Institute of Computer Software, Nanjing University 21

寻址 特点: 优点: 由Communicator集中进行寻址和消息路由,而不是由agent获得目标地址后自行建立连接发送消息 名全局唯一 使用方便 寻址透明 Communicator功能可扩充 5/7/2019 Institute of Computer Software, Nanjing University 22

可靠通信 通信可靠性研究: 通信失效现象: A A:send(B,M) 202.119.36.136 M B M 5/7/2019 Institute of Computer Software, Nanjing University 23

可靠通信 通信可靠性研究的必要性: 移动agent支撑环境可能会成为未来分布计算平台的通用支撑环境 Agent协同是agent的天然特性 5/7/2019 Institute of Computer Software, Nanjing University 24

可靠通信 失效现象的研究约束 Agent通信基于MP 物理通信线路无故障 无节点崩溃 无信件丢失 信件保序 5/7/2019 Institute of Computer Software, Nanjing University 25

可靠通信 研究需求 对agent来说,位置透明 可靠性强 额外的通信开销小 合理处理对agent自主迁移的影响 有限时间内信件送达 5/7/2019 Institute of Computer Software, Nanjing University 26

可靠通信 现象 本地通信失效 B A 5/7/2019 Institute of Computer Software, Nanjing University 27

可靠通信 异地通信失效 A A:send(B,M) M B M 5/7/2019 Institute of Computer Software, Nanjing University 28

可靠通信 分析 结论 无论本地通信还是异地通信,其通信模型是一致的 通信失效本质上都是因为在路由信件和实际信件传输过程中,目标agent发生了物理位置的变化,而这种变化是随机的,不可预计的。 结论 通信失效现象是一个因agent的移动而带来的可能会出现在任意一个移动agent系统中的普遍现象 5/7/2019 Institute of Computer Software, Nanjing University 29

可靠通信 其它系统的处理 Aglets:未见 Mole: 将失效信件扔弃; 扔弃的同时回送错误信息 将失效信件就地保存,待被通信agent在回送时交付 5/7/2019 Institute of Computer Software, Nanjing University 30

可靠通信 根本原因: 移动:随机改变位置信息 通信:要求位置信息“暂时”不变 通信和移动所共享的“位置”信息未进行同步控制是造成通信失效的根本原因 从OS进程互斥考虑,接收者的“位置”在通信失效问题中具有决定性的意义,当通信和移动相矛盾时,该“位置”就成为了一个必须互斥使用的“资源” 5/7/2019 Institute of Computer Software, Nanjing University 31

可靠通信 Agent状态划分 物理位置是确定的 指不会发生位置的变化 Agent迁移申请到Agent恢复执行 物理位置是不确定的 创建 结束 移动态 静止态 移动态 静止态 …… Agent迁移申请到Agent恢复执行 物理位置是不确定的 5/7/2019 Institute of Computer Software, Nanjing University 32

可靠通信 “位置”的互斥  “状态”的互斥 处于移动态的agent的“移动”拥有“位置”资源的使用权,只有当它处于“静止态”时,才能接受信件,“通信”才能使用“位置”资源 在通信过程中,“移动”将被限制,agent不允许发生位置状态的变化 5/7/2019 Institute of Computer Software, Nanjing University 33

可靠通信 在一个能够避免通信失效的移动agent系统中,必须且只要做到以下三条 : 准确记录agent的状态信息 信件发送过程中必须限制接收者从“静止态”向“移动态”的状态转换 5/7/2019 Institute of Computer Software, Nanjing University 34

? 如何做到: 层次式通信框架 -通信失效解决方案 刻画agent状态的数据结构设计 agent状态值使用的“临界区”界定 层次式通信框架 -通信失效解决方案 如何做到: ? 刻画agent状态的数据结构设计 agent状态值使用的“临界区”界定 agent状态的“临界区”管理 5/7/2019 Institute of Computer Software, Nanjing University 35

刻画agent状态的数据结构设计 层次式通信框架 -通信失效解决方案 增添mogent状态值:迁移态、静止态 层次式通信框架 -通信失效解决方案 刻画agent状态的数据结构设计 增添mogent状态值:迁移态、静止态 Home将维护mogent状态值的变化 5/7/2019 Institute of Computer Software, Nanjing University 36

Mogent状态值的使用 层次式通信框架 -通信失效解决方案 mogent在某个结点上执行时,其状态值定义为静止态 层次式通信框架 -通信失效解决方案 Mogent状态值的使用 mogent在某个结点上执行时,其状态值定义为静止态 mogent按计划准备向另一个结点迁移时, 必须通知该mogent的Home, Home收到通知后应将状态值改为移动态 mogent到达某个新结点时,新结点必须向mogent的Home 通知该mogent的到达,Home收到通知,将状态值改为静止态 5/7/2019 Institute of Computer Software, Nanjing University 37

层次式通信框架 -通信失效解决方案 移动态 静止态 静止态 Home Go H2 5/7/2019 层次式通信框架 -通信失效解决方案 移动态 静止态 静止态 Home Go H2 5/7/2019 Institute of Computer Software, Nanjing University 38

层次式通信框架 基础框架和寻址、通信算法的改进: Home结构调整: Mogent状态修改规则: mogent状态分为静止态和移动态 mogent按计划准备向另一个结点迁移时, 必须通知该mogent的Home, Home收到通知后应将状态值改为移动态 mogent到达某个新结点时,新结点必须向mogent的Home 通知该mogent的到达,Home收到通知,将状态值改为静止态 5/7/2019 Institute of Computer Software, Nanjing University 39

层次式通信框架 Communicator: communicator中,为每个mogent设置了“在途信件数”:Mail_Num_onTrip 在途:Home回复了寻址信件后开始,直到这次通信的信件到达B为止的这段时间 Mail_Num_onTrip:非0表示有人在向该agent发信,agent的迁移应该暂停 规则:当一个agent准备离开某个结点时,它所对应的”在途信件数”必须为0,否则,移动要求将被暂缓。 5/7/2019 Institute of Computer Software, Nanjing University 40

层次式通信框架 A A:send(B,M) 红线表示的时间段内B不得迁移 M B M 5/7/2019 Institute of Computer Software, Nanjing University 41

层次式通信框架 A A:send(B,M) 在途信件数加1 M B M 5/7/2019 Institute of Computer Software, Nanjing University 42

层次式通信框架 通信请求发生在迁移请求之前 静止 迁移 静止 A A:send(B,M) M B M T1时刻 T0时刻 在途信件数加1 5/7/2019 Institute of Computer Software, Nanjing University 43

层次式通信框架 迁移请求发生在通信请求之前 静止态 迁移态 A:send(B,M) M 在途信件数加1 B 阻塞 入队 T0时刻 5/7/2019 Institute of Computer Software, Nanjing University 44

层次式通信框架 性能分析: 算法的能力足够 Home节点的通信开销增加 通信优先不利于迁移的自主性 迁移优先不利于通信保障 时间优先 移动agent系统中,大量出现的是本地通信 5/7/2019 Institute of Computer Software, Nanjing University 45

Mobile agent通信再思考 到底有哪些因素可以帮助我们开展对mobile agent的可靠通信研究? 5/7/2019 Institute of Computer Software, Nanjing University 46

移动Agent通信机制需求 位置透明性 可靠性 高效性 异步性 自适应性 指系统应该提供寻址机制动态地定位目标Agent,从而对用户屏蔽Agent的移动性 可靠性 是指消息经过有限次发送或者转发后能够到达目标Agent 高效性 指寻求适当的平衡,使得Agent迁移和消息发送的开销之和变得最小 异步性 指通信机制的设计不应该影响Agent的异步运行能力,应尽量减少对Agent迁移的限制,支持Agent 的异步迁移 自适应性 指不同的应用会对移动Agent通信和迁移有不同的要求,从而需要通信机制能够相应地进行调整 5/7/2019 Institute of Computer Software, Nanjing University 47

工作分类 基于Home的寻址机制 迁移路径上的消息转发机制 层次式寻址机制 广播机制 类似Mobile IP 在Agent迁移路径上的每一台主机上都留有指向Agent下一目的地的地址 层次式寻址机制 系统中的寻址或消息转发服务器被按区域组织成层次式树状结构(类似DNS结构) 广播机制 如果沿着移动对象的迁移路径寻址失败,则使用广播方式实现寻址,仅适用局域网 5/7/2019 Institute of Computer Software, Nanjing University 48

通用通信框架 移动Agent: (HomeID,AgentTitle) 每个移动Agent都被赋予一个信箱(mailbox)作为消息缓冲区.发往Agent的消息先被存放在其信箱中,Agent从信箱中取得消息进行处理.信箱可以与相应的Agent分离,它们可以分处于两台不同的主机 移动Agent 每次迁移,既可以把信箱留在原地,独自迁移到目标主机,也可以带信箱一起迁移至目标主机.由于Agent 迁移时信箱可以留在原地,信箱的迁移频率可以远远低于其Agent,从而减小地址注册开销. 5/7/2019 Institute of Computer Software, Nanjing University 49

通用通信框架 MAP MAP MAP MB: mailbox MAP: Mobile Agent Platform Receiver Sender The gray ellipse means the agent had stayed at the host before. But it has left the host now. So is the meaning of the gray rectangle, which stands for the mailbox of the agent. MAP MAP MB: mailbox MAP: Mobile Agent Platform 5/7/2019 Institute of Computer Software, Nanjing University 50

基础框架 每个节点上运行一个移动agent平台 每个agent有一个邮箱,存储信件 发往agent的信件首先发送至该agent的邮箱 5/7/2019 Institute of Computer Software, Nanjing University 51

基础框架:定义 Patha(A): 节点的有序列表 (ha0, ha1, …, han) 表示agent A 曾经访问过的节点序列 Sa={hai | hai is on Patha(A)} Pathm(A): 节点的有序列表 (hm0, hm1, …, hmn) 表示agent A的信箱访问过的节点序列 Sm={hmi | hmi is on Pathm(A)} f: Sa Sm, 对于任意的 hai Sa, By definition we have Sm  Sa and hm0 = ha0. The host hm0 is the home of agent A. 5/7/2019 Institute of Computer Software, Nanjing University 52

基础框架:假设 假设Agent 之间主要采用异步通信方式进行通信 不探讨因网络或主机出错所导致的消息发送失败 5/7/2019 Institute of Computer Software, Nanjing University 53

基础框架:三维模型 信箱中信件到agent的发送方式: 信箱迁移频率: Push(PS):信箱agent Pull(PL):agent 信箱 信箱迁移频率: 无迁移 (NM): Sm = {hm0} 全迁移 (FM): Sm = Sa 跳跃迁移 (JM): | Sm| > 1 and Sm  Sa 5/7/2019 Institute of Computer Software, Nanjing University 54

基础框架:三维模型 信件在“agent-信箱-agent”之间的同步关系 Types 无同步(NS),主机消息发送和信箱迁移的同步(SHM),信箱消息发送和Agent 迁移的同步(SMA),全同步(FS) 在我们的信箱模型中,消息发送和目标迁移的同步可能发生在两个环节上,即主机的消息发送和目标Agent的信箱迁移之间的同步以及信箱的消息发送和相应Agent 的迁移之间的同步.用户可以通过设置同步模式来选择对消息传递可靠性的要求.如果用户对消息可靠性的要求较高,在相应的通信协议中可以选择较强的同步模式 5/7/2019 Institute of Computer Software, Nanjing University 55

基础框架:三维模型 PL PS NM JM FM NS SHM (SMA) FS 模型三维是正交的 协议: XX-YY-ZZ Y (Delivery Mode) PL PS NM JM FM X (Migration Frequency) NS SHM (SMA) FS Z (Synchronization) 模型三维是正交的 协议: XX-YY-ZZ 5/7/2019 Institute of Computer Software, Nanjing University 56

基础框架:协议组合 基于Home服务器的协议 NM-PS-NS: Mobile IP NM-PS-SMA: Mobile IP + Sync信箱消息转发和Agent 迁移的同步机制 NM-PL-NS:移动Agent 每次从位于Home的信箱中Pull消息 Give a brief description of NM-PL-NS, which will be compared with ARP. 5/7/2019 Institute of Computer Software, Nanjing University 57

Mobile IP Solution MAP MAP-Home Reg MAP MAP 5/7/2019 Institute of Computer Software, Nanjing University 58

Mobile IP + Synchronization MAP MAP-Home Reg ACK Dereg MAP MAP 5/7/2019 Institute of Computer Software, Nanjing University 59

Mobile IP + Synchronization MAP MAP-Home Reg ACK Dereg MAP MAP 5/7/2019 Institute of Computer Software, Nanjing University 60

Mobile IP + Synchronization MAP MAP-Home ACK Dereg MAP MAP 5/7/2019 Institute of Computer Software, Nanjing University 61

Mobile IP + Synchronization 优点 简单 保证可靠消息传递 Agent在迁移前接收到所有正在传输的消息 在Agent迁移期间消息转发将被暂停 缺点 太过依赖于Home节点 性能瓶颈 单点失败 异步执行 三角路由 5/7/2019 Institute of Computer Software, Nanjing University 62

基础框架:协议组合 基于指针转发的协议 特点:所有Pathm(A)上的主机被组织成一条链表 优点 缺点 FM-*-NS JM-PL-NS JM-PS-NS 特点:所有Pathm(A)上的主机被组织成一条链表 优点 简单。信箱迁移时无须进行地址注册,因而不会增加额外的网络开销。降低了Agent Home的负载。 缺点 消息处理的可靠性和实时性 5/7/2019 Institute of Computer Software, Nanjing University 63

基础框架:协议组合 基于分布式地址注册的协议 FM-*-SHM (Distributed Home Scheme) JM-PS-FS JM-PL-SHM (ARP:Adaptive and Reliable Protocol) 5/7/2019 Institute of Computer Software, Nanjing University 64

Distributed Home Scheme MAP-1 MAP-2 MAP-3 MAP-5 MAP-4 5/7/2019 Institute of Computer Software, Nanjing University 65

Distributed Home Scheme MAP-1 MAP-2 MAP-3 MAP-5 MAP-4 5/7/2019 Institute of Computer Software, Nanjing University 66

Distributed Home Scheme MAP-1 MAP-2 MAP-3 MAP-5 MAP-4 5/7/2019 Institute of Computer Software, Nanjing University 67

Distributed Home Scheme 优点 位置透明,可靠 对Agent Home的依赖减少 没有三角路由问题 缺点 迁移代价大 迁移延迟大 5/7/2019 Institute of Computer Software, Nanjing University 68

ARP (Adaptive and Reliable Protocol)协议 基本思路 协议性质 分析 MB MAP MAP MAP 5/7/2019 Institute of Computer Software, Nanjing University 69

The ARP Protocol 位置更新 Patha(R)={home,h1,h2,h3,h4} Pathm(A) 上的每个节点设置地址表,维护agent A的信箱物理地址和状态 Patha(R)={home,h1,h2,h3,h4} Pathm(R)={home,h1,h3} Home Agent:R MB H2 H3 R H4 Receiver H1 5/7/2019 Institute of Computer Software, Nanjing University 70

位置更新 Agent A从hai迁移到ha(i+1)之前,决定是否携带其信箱到 ha(i+1). 如果携带,agent通知它的信箱(此时信箱在f(hai) 上)移动到目标节点。通知完毕,A迁移到ha(i+1)并立刻恢复执行。 5/7/2019 Institute of Computer Software, Nanjing University 71

位置更新 Home H1 H2 H3 H4 H5 R R R R R Receiver R MB MB MB 5/7/2019 Institute of Computer Software, Nanjing University

位置更新 信箱收到迁移通知后,向Pathm(A)中所有节点发送注销请求:注销当前信箱地址。 当某个节点收到信箱的注销信件,修改其地址表中该信箱的物理位置为“无效地址”,回送ACK给相应信箱 5/7/2019 Institute of Computer Software, Nanjing University 73

位置更新 Home h1 h2 h3 h4 h5 ACK deregister R Receiver Receiver Receiver MB h1 Receiver MB h2 Receiver h3 Receiver MB Receiver Receiver Receiver h4 h5 5/7/2019 Institute of Computer Software, Nanjing University

位置更新 准备迁移的信箱在收集完毕所有Pathm(A)上的节点之ACK信件后,迁移至节点 ha(i+1). Agent A及其信箱到达ha(i+1)后,向Pathm(A)上的所有节点进行新地址注册(此时ha(i+1) 在 Pathm(A) 中) 收到注册信件的节点,将其地址表中相应信箱的地址设置为新地址并标明“有效” 5/7/2019 Institute of Computer Software, Nanjing University 75

位置更新 update Home h1 h2 h3 h4 h5 ACK deregister register R Receiver MB h1 Receiver MB h2 Receiver h3 Receiver MB MB register Receiver Receiver Receiver h4 h5 5/7/2019 Institute of Computer Software, Nanjing University

The ARP Protocol – Basic Idea 信件路由 每个发送者维护一个接受者agent的信箱地址变量:如果是第一次通信,该地址设置为接受者agent的home hm0 信件直接发送给变量中存放的地址节点。 节点收到某个信件,检查该信件欲送达的信箱是否还在本节点。如果还在,直接送到信箱中。 否则,查看这个节点维护的地址表,检查地址表中该信箱的地址是否为“有效”地址。 5/7/2019 Institute of Computer Software, Nanjing University 77

The ARP Protocol – Basic Idea 如果地址有效,节点将该信件转发给这个地址,并通知发送者:该信件欲送达之信箱新地址更改为***.发送者收到此信件后,更新地址变量为最新地址 如果地址无效,信件被阻塞,进入相应队列中。 该节点必定收到agent信箱的注册信息,更新地址表中相关内容,恢复地址为“有效”,转发所有阻塞信件。一一通知相应发送者进行地址更新。 最终,agent可以从信箱中获得相应信件。 5/7/2019 Institute of Computer Software, Nanjing University 78

The ARP Protocol – Basic Idea Sender MAP Receiver’s MB Receiver’s MB Receiver’s MB MAP MAP H1 H2 得知接受者信箱地址H2 5/7/2019 Institute of Computer Software, Nanjing University 79

The ARP Protocol – 特性 位置透明:发送者无需知道当前目标agent的物理地址。 可靠: 所有信件至多被转发一次即可到达接受者信箱。 异步: 降低对Home节点的依赖 降低了对agent的移动的限制 5/7/2019 Institute of Computer Software, Nanjing University 80

The ARP Protocol 信箱和agent的分离: 但是: 何时带信箱迁移?得失如何? 带来了迁移的自由度 带来了部分信件的通信开销的减少 但是: 带来了控制信息的开销 带来了信件转发的开销 何时带信箱迁移?得失如何? 5/7/2019 Institute of Computer Software, Nanjing University 81

The ARP Protocol ARP协议的适应性 通过动态判断信箱迁移频率,可以有效平衡迁移开销和信件递送开销,使得总开销可以接受 可以参考的因素: hai上agent接收信件的数量 f(ha(i-1))和hai之间的距离 其它因素如实时等 5/7/2019 Institute of Computer Software, Nanjing University 82

比较 5/7/2019 Institute of Computer Software, Nanjing University 83

思考题 移动agent命名应该具有什么特性?为什么? 简述课堂讲授的双层名设计方案及其通信机制。 什么是通信失效?其根本原因是什么? 5/7/2019 Institute of Computer Software, Nanjing University 84

References Jiannong Cao, Xinyu Feng, Jian Lu, Sajal K. Das: Mailbox-Based Scheme for Designing Mobile Agent Communication Protocols. IEEE Computer 35(9): 54-60 (2002) Jiannong Cao, Xinyu Feng, Jian Lü, Henry C. B. Chan, Sajal K. Das: Reliable Message Delivery for Mobile Agents: Push or Pull. ICPADS 2002: 314-320 Jiannong Cao, Xinyu Feng, Jian Lu, Henry C. B. Chan, Sajal K. Das: Reliable message delivery for mobile agents: push or pull? IEEE Transactions on Systems, Man, and Cybernetics, Part A 34(5): 577-587 (2004) 5/7/2019 Institute of Computer Software, Nanjing University 85