第九章 移动IP

什么是移动:移动指的是用户连接位置的改变,而不是设备物理位置的改变

移动可以是离散的或连续的

移动IP的基本要求:1、IP地址不变 2、宿地址路由 3、信息量和交互简化 4、安全 5、组播 6、隐蔽

转交地址是分配给移动设备的临时IP地址。它允许归属地代理向移动设备转发消息。

移动IP的基本模型:感知位置变化、获取一外部地址并告知本地代理、继续正常方式通信

代理发现:通过ICMP进行移动代理的请求和通告(移动节点将从代理通告中获得代理地址)

移动检测:1、检查收到的代理通告中的网络地址前缀与当前使用的转交地址的网络地址前缀是否相同;如果不同,则移动节点可以认为它已经移到了一个新的网络2、生存期时间内,移动节点没有再次收到新的生存期值,则表明已失去联系,移动节点要发出代理请求以寻找新的可用的外部代理

注册:1、使移动节点将自己当前的可达性信息通知本地代理2、通过注册,移动节点将在本地代理的注册表中创建一个本地地址与转交地址的移动绑定,它具有指定的生存期3、移动节点如果使用外部代理转交地址,则需要通过该代理进行注册4、移动节点要定期向本地代理进行重复注册,以维持移动绑定的生存期。

移动节点的单播路由:如果移动节点使用外部代理转交地址进行注册,它可以使用这个外部代理作为缺省路由器,其链路地址可从代理通告中获得。

外部代理的单播路由:在收到封装报文后,外部代理如果检查发现报文的内层宿地址与访问者表匹配,则拆封后转发给移动节点,外部代理不能将移动路由器和移动节点的情况告知其他路由

本地代理的单播路由:本地代理必须检查所有到达报文的IP宿地址,若与每个注册过的移动节点的本地地址相同,则按相应的转交地址通过隧道进行转发。本地代理不能用其他端口作为源地址,代理应该支持隧道软技术。

移动节点的广播路由:本地代理收到广播时,要转发给移动绑定中设置了B的移动节点,若设置了D,则本地代理可以使用转交地址将广播封装并转发给移动节点

移动节点的组播路由:两种方法:1、使用外部网络的某个组播路由器转交地址作为组播源地址 2、若本地代理是组播路由器,则可以通过双向隧道加入组播组

代理ARP:是指一个节点不能回答ARP请求时,由另一个节点代为做出ARP响应(给出代理节点的IP地址和链路地址)

无端ARP:主机有时会使用自己的IP地址作为目标地址发送ARP请求。如果收到ARP响应表明存在重复地址,当一个设备收到一个arp请求时,发现arp缓冲区中已有发送者的IP地址,则更新此IP地址的MAC地址条目。因为它不是经过其他主机的ARP请求广播后发出的ARP广播,所以叫无故ARP

移动节点在外部网络时的ARP处理:在发送注册请求前,除了与外部代理的通信外,移动节点关闭对ARP请求的处理。移动节点的本地代理接受移动节点的注册后它要执行无端ARP广播以体制所有的本地节点,并启动代理Arp功能回答所有对这个移动节点的ARP请求

移动节点回到本地网络后的ARP处理:在发送注册请求前,移动节点首先恢复ARP请求的处理功能,移动节点进行无端ARP广播,更新网络各节点的ARP块表。移动节点的本地代理接受了该注册之后,它应该停止为这个移动节点发送代理ARP报文,并执行一个无端ARP广播以更新网络节点的ARP块表。

反向隧道:反向隧道的起点是移动节点的转交地址,终点是本地代理。报文由外部代理进行封装之后传送至本地网络,再汇入正常的路由。

移动节点到达外部网络后,要从代理通告中选择使用支持反向隧道的外部代理。

不同地址空间支持:1、移动节点可能会进入其本地地址不可达的外部网络2、反向隧道的前提是外部代理和本地代理处在同一个地址空间中,彼此可达。

有限私有地址方案:两个移动节点使用相同的私有地址且访问同一个外部代理,但它们的本地代理必须是不一样的。外部代理通过不同的链路地址区分这两个移动节点,并将它们的报文转发给各自的本地代理,本地地址对于外部代理是无意义的。

路由优化:路由优化的目的是改进正常的移动IP机制所产生的三角路由现象1、允许网络节点将移动节点的绑定缓存下来,直接转发给其转交地址,旁路掉本地代理2、将基于过时的绑定内容的报文按新的转交地址进行转发。

发送报文时要检查绑定快表,如发现报文宿地址与绑定快表中的本地地址匹配,则将报文宿地址改为对应的转交地址。

如果本地代理拦截到某个源点发往移动节点的报文,表明该节点没有这个移动节点的移动绑定信息。于是本地代理将向这个节点发送一个绑定更新报文,以便让随后的报文直接发往移动节点的当前网络。

移动节点的快速切换:1、切换的延迟问题:移动节点只能与直接相连的外部代理通信(L2切换)注册请求在网络中传输需要一定的时间,而在此期间移动节点不能发送和接收报文2、改进方案:移动节点要在完成L2切换之前在新外部代理预先建立地址注册状态,网络在处理切换过程中不中断服务。

前注册切换:1、为加速切换过程,原外部代理可以预先定期请求并缓存从各个新外部代理发来的通告信息,构成一张邻接表2、移动节点在发送信息之前要进行移动检测确认到nFA的链路已建立。

后注册切换:后注册切换过程不涉及移动节点。原外部代理成为该移动节点的移动锚定点,称为锚定外部代理。移动节点移向新外部代理时,移动节点继续利用双向边缘隧道来使用这个锚定外部代理。这个双向隧道将保持到移动节点新地址注册的完成。

两方的后注册切换:当移动节点接收到L2-LU,它可以发起移动地址注册过程。如果MN还要移动且不准备启动地址注册过程,则oFA成为aFA

三方的后注册切换方式:,移动节点与锚定外部代理建立固定隧道,锚定外部代理与当前外部代理建立可移动的隧道,实现移动节点与当前外部代理之间的通信。nFA首先检查其访问者快表,看自己与MN之间是否已经有隧道存在

Mobile IPv6 Operations:步骤1:路由器广告:路由器发送,让MN知道它的位置,告诉MN-HA的IP;Mn存储HA的IP 2、MN移动到外部网络3、路由器广告Mn通过无状态地址获得自动配置,存储CCOA  3’ 从DHCPv6获得状态CCOA  4、向HA发送绑定更新,从HA获得绑定确认5、为MN发送邻居广告6、CN启动连接,向MN的IP发送数据包,但是用的HA的MAC  7、封装数据包(IP中的IP),将包裹传到MN  8、通过路由器应答CN的数据包,捎带绑定更新8、搬回家庭网络,接收路由器广告,发送BU到HA和CN

计算机网络体系结构整理-第九单元移动IP的更多相关文章

  1. 计算机网络体系结构整理-第二单元IP技术

    IP技术 1.IPV4 Ipv4的报头格式 Ipv4地址分为ABCDE类, 类别 IP地址范围 私有IP地址范围 A 0.0.0.0-127.255.255.255 10.0.0.0-10.255.2 ...

  2. TCP/IP 协议图--计算机网络体系结构分层

    计算机网络体系结构分层   计算机网络体系结构分层 不难看出,TCP/IP 与 OSI 在分层模块上稍有区别.OSI 参考模型注重“通信协议必要的功能是什么”,而 TCP/IP 则更强调“在计算机上实 ...

  3. react第九单元(propTypes验证)

    第九单元(propTypes验证) #课程目标 理解类型验证的必要性 灵活掌握类型验证的使用 #知识点 在给react组件传属性的的时候,我们可以定义属性的类型,此时我们需要下载prop-types这 ...

  4. vue第九单元(非父子通信 events 单向数据流)

    第九单元(非父子通信 events 单向数据流) #课程目标 了解非父子组件通信的原理,熟练实现非父子组件间的通信(重点) 了解单向数据流的含义,并且明白单向数据流的好处 #知识点 #1.非父子组件间 ...

  5. 计算机网络 0.初识Internet与TCP/IP协议

    互联网,即因特网,Internet.互联网是一个世界范围的计算机网络.连接了世界上无数的计算设备,这些计算设备为PC.基于Linux的工作站,serverservers等等. 这些设备依据其作用不同可 ...

  6. 计算机网络再次整理————tcp周边[八]

    前言 tcp的包的格式可以看我以前的计算机网络整理,下面这些周边只是为了开发时候我们能用到一些理论知识. 正文 首先要介绍的就是域名,为啥有域名这东西呢?单纯站在网络的角度上讲这属于应用层的东西了. ...

  7. 计算机网络、OSI模型、TCP/IP族

    一.计算机网络分类 1.按通信距离分类: 局域网:LAN,10m-1000m,房间.校园: 城域网:MAN,10km,城市: 广域网:WAN,100km以上,国家.全球. 二.OSI(Open Sys ...

  8. 计算机网络再次整理————tcp例子[五]

    前言 本文介绍一些tcp的例子,然后不断完善一下. 正文 服务端: // See https://aka.ms/new-console-template for more information us ...

  9. 计算机网络(二),TCP/IP四层模型常见协议

    目录 1.应用层协议 2.传输层协议 3.网络层协议 4.链路层协议 二.TCP/IP四层模型常见协议 1.应用层协议 (1)POP3 (2)FTP (3)HTTP (4)Telnet (5)SMTP ...

随机推荐

  1. 『言善信』Fiddler工具 — 4、Fiddler面布局详解【工具栏】

    目录 (一)工具栏详细介绍 1.第一组工具: 2.第二组工具: 3.第三组工具: 4.第四组工具: (二)工具栏使用说明 1.Fiddler修改代理端口: 2.过滤Tunnel to...443请求链 ...

  2. Step By Step(Lua编译执行与错误)

    Step By Step(Lua编译执行与错误) 1. 编译:    Lua中提供了dofile函数,它是一种内置的操作,用于运行Lua代码块.但实际上dofile只是一个辅助函数,loadfile才 ...

  3. 七、Numpy高效数据处理

    Numpy的主要作用是进行矩阵运算 在使用时首先要导入包 import numpy as np np.version.version 用来查看版本信息 # 构建一维数组 n1=np.array([1, ...

  4. HTML <a> 标签的 href 属性

    w3school页面的描述: HTML <a> 标签的 href 属性 HTML <a> 标签 实例 href 属性规定链接的目标: <a href="http ...

  5. 聊聊 apt sources.list 文件格式

    前言 之前玩 ubuntu 需要切换国内源地址时,都是网上复制别人提供好的,也不知道是什么意思,拿来就用. 这次花点时间来看一下 apt sources.list 的格式,以及其表示的含义. 格式 s ...

  6. TensorFlow反向传播算法实现

    TensorFlow反向传播算法实现 反向传播(BPN)算法是神经网络中研究最多.使用最多的算法之一,用于将输出层中的误差传播到隐藏层的神经元,然后用于更新权重. 学习 BPN 算法可以分成以下两个过 ...

  7. C语言真正的编译过程

    说实话,很多人做了很久的C/C++,也用了很多IDE,但是对于可执行程序的底层生成一片茫然,这无疑是一种悲哀,可以想象到大公司面试正好被问到这样的问题,有多悲催不言而喻,这里正由于换工作的缘故,所以打 ...

  8. SpringBoot系列——cache缓存

    前言 日常开发中,缓存是解决数据库压力的一种方案,通常用于频繁查询的数据,例如新闻中的热点新闻,本文记录springboot中使用cache缓存. 官方文档介绍:https://docs.spring ...

  9. UF 公共类型

    Open C uc4400uc4403uc4404uc4406uc4409uf3192uf4401uf4402UF_add_callback_functionUF_allocate_memoryUF_ ...

  10. 【NX二次开发】Block UI 通过浏览选择文件

    属性说明 属性   类型   描述   常规           BlockID    String    控件ID    Enable    Logical    是否可操作    Group    ...