移动 IP(计算机网络-网络层)

news/2024/5/17 6:07:03/文章来源:https://blog.csdn.net/qq_50942093/article/details/128427731

目录

移动性对网络应用的影响

移动IP中数据报的转发过程

移动IP中数据报的转发过程

三角路由的低效性

解决三角路由的低效性

移动IP的标准


移动性对网络应用的影响


现在先考虑这样一种情况,一个用户拿着无线移动设备在一个Wi-Fi服务区内走动,并且边走边通过Wi-Fi从网络上下载一个视频文件。

显然用户是在移动中通信,但从网络层的角度看,该用户并没有在移动,因为用户并没有因移动改变了他所在的网络,用户的移动设备也没有改变它的IP地址。

这种移动对于正在通信的应用程序来说完全感觉不到,因为应用程序是通过IP地址在网络层以上进行通信的。

在 Wi-Fi 内部移动对于正在通信的应用程序来说是完全透明的,移动设备并没有改变它的 IP 地址。

但如果移动设备跨越通过路由器互连的网络进行漫游并不断改变其 IP 地址,则会给需要持续保持网络连接的应用带来很大的麻烦。

移动 IP 的任务就是在IP层为上层网络应用提供移动透明性。

移动IP中数据报的转发过程


移动主机初始申请接入的网络被称为  归属网络(home network),在归属网络的IP地址被称为     归属地址(home address),或  永久地址(Permanent  Address)

移动IP中数据报的转发过程


        在归属网络中代表移动主机执行移动管理功能的实体称为归属代理(home agent)。移动主机当前漫游所在的网络叫外地网络(Foreign Network)或被访网络(Visited Network)。

        在归属网络中代表移动主机执行移动管理功能的实体称为归属代理(homeagent)。移动主机当前漫游所在的网络叫外地网络(Foreign Network)或被访网络(Visited Network)。

        在外地网络中帮助移动主机执行移动管理功能的实体称为外地代理(Foreign Agent),外地代理会为移动主机提供一个临时使用的属于外地网络的转交地址(Care-of Address)。

        归属代理和外地代理可以配置在路由器上,也可以运行在其他主机或服务器上。

        移动主机会通过代理发现协议与该外地网络中的外地代理建立联系,并从外地代理获得一个属于该外地网络的转交地址。

        同时向外地代理注册自己的永久地址和MAC地址,并向移动主机的归属代理注册该转交地址。

        这些过程对于任何与移动主机进行通信的通信主机来说都是完全透明的!在这个过程中,对于通信主机来说完全感觉不到对方位置的改变!

        在这个过程中,对于通信主机来说完全感觉不到对方位置的改变!

        归属代理会代替移动主机A以自己的MAC地址应答所有对移动主机A的ARP请求。

        当外地代理和移动主机不是同一台机器时,转交地址实际上是外地代理的地址而不是移动主机的地址。所有使用同一外地代理的移动主机都可以共享同一转交地址。

        由于外地代理从IP隧道中取出的被拆封的IP数据报的目的地址为移动主机的永久地址,因此外地代理不能简单地直接发送给移动主机,因为这样将会把该数据报又发送回移动主机的归属网络。

        

        外地代理在登记移动主机的永久地址时,会同时记录下它的MAC地址。外地代理会在代理注册表中查找移动主机的永久地址所对应的MAC地址,并将该IP数据报直接封装到目的MAC地址为移动主机的MAC帧中进行发送。

        移动主机可以将外地代理作为自己的默认路由器,也可以通过代理发现协议从外地代理获取外地网络中路由器的地址,并将其设置为自己的默认路由器。

三角路由的低效性


解决三角路由的低效性


解决这个问题的一种直接方法就是要求通信主机也要配置一个通信者代理,通信主机发送给移动主机的数据报都要通过该通信代理转发。

该通信代理先从归属代理获取移动主机的转交地址,之后所有发送给移动主机的数据报都利用转交地址直接通过IP隧道发送给移动主机的外地代理,而无需再通过归属代理进行转发。

但这种解决方法以增加复杂性为代价,并对通信主机不再透明(因为要配置通信者代理)。

移动IP的标准


代理发现 定义归属代理或外部代理向移动主机通告其服务时所使用的协议,以及移动主机请求一个外部代理或归属代理的服务时所使用的协议。

信息注册 定义移动主机向外地代理注册或注销永久地址、归宿代理地址等信息,以及移动主机或外地代理向归宿代理注册或注销转交地址时所用的协议。

间接路由 定义了数据报由一个归属代理转发给移动主机的方式,包括转发数据报的规则、差错处理规则和几种不同的封装形式。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_239695.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【python圣诞树的实现】

🤵‍♂️ 个人主页老虎也淘气 个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞👍🏻 收藏…

http 库的服务端实现

前言 net/http 库的客户端实现(上) net/http 库的客户端实现(下) net/http 库的服务端实现 上两篇文章介绍了 http 客户端的实现,这篇文章看一下服务端的实现 服务端 使用 net/http 库可以快速搭建HTTP服务,HTTP服务端主要包含两部分: …

【圣诞特辑】码一个漂漂亮亮的圣诞树(Single Dog版)

目录 前言 一、C语言版圣诞树 1.代码实现 2.效果图 二、python版圣诞树 1.代码实现 2.效果图​ 三、html5版圣诞树 1.代码实现 2.效果图 总结 前言 圣诞节即将来临,圣诞树也是必不可少的装饰之一。圣诞树是一棵绿叶繁茂的树,上面挂满了彩色的灯…

Python pandas有好几百个库函数,你都用过吗(4)

上一篇链接: https://blog.csdn.net/boysoft2002/article/details/128428569 S~W: Function46~56 Types[Function][45:] [set_eng_float_format, show_versions, test, timedelta_range, to_datetime, to_numeric, to_pickle, to_timedelta, unique,…

VSCode 最全实用插件

一、必备插件 🌾Chinese(中文) Settings Sync(配置同步到云端) 可以让我们的vscode配置同步到云端,当我们跟换电脑或者再次安装vscode的时候,只需要登录账号即可同步配置了 wakatime&#xf…

技术分享 Oracle下启用块跟踪

创建存放块跟踪文件目录 [oraclehost01 ~]$ cd /u01/app [oraclehost01 app]$ mkdir BCT 启用块跟踪 SQL> alter database enable block change tracking using file /u01/app/BCT/rman.bct; 检查块跟踪状态 SQL> col filename for a22 SQL> select filename, status,…

RabbitMQ——延迟队列

目录 一、延迟队列的应用场景 1. 场景:"订单下单成功后,15分钟未支付自动取消" ① 传统处理超时订单 ② RabbitMQ延时队列方案 二、延迟队列中的消息投递和消息消费 1.TTL 和 DLX ① TTL ② DLX和死信队列 ③ 延迟队列 ④ 开发步骤 …

get/post/put/delete请求头说明

目录 1.请求头说明 2.get 3.delete 4.post 5.put 6. 说明 7.Content-Type说明 1.请求头说明 前端发出的请求通过浏览器进行查看,可以发现分为四个部分。常规信息(General),请求头信息(Request Headers),响应头信息(Response Headers)…

ConvLSTM时空预测实战代码详解

写在前面 时空预测是很多领域都存在的问题,不同于时间序列,时空预测不仅需要探究时间的变化,也需要关注空间的变化。许多预测问题都只片面的关注时间问题,如预测某人未来3年患某种病的概率,食堂就餐人数等&#xff0c…

35. 池化层 / 汇聚层 代码实现

1. 池化层 在下面的代码中的pool2d函数,我们实现汇聚层的前向传播。 这类似于之前文章中的的corr2d函数。 然而,这里我们没有卷积核,输出为输入中每个区域的最大值或平均值。 from torch import nn from d2l import torch as d2l# X是输入&…

springcloud-gateway简介

目录 1. gateway简介 1.1 是什么 1.2 作用 1.3 主要特征 1.4 与zuul的主要区别 1.5 主要组件 1.6 架构图 2. 开发示例 2.1 创建一个gateway模块 2.2 与nacos结合使用 2.2.1 默认规则 2.2.2 通过配置文件配置路由 2.2.3 动态路由 1. gateway简介 1.1 是什么 SpringC…

VuePress初学之利用模板theme创建一个个人博客网站

目录前言官方文档创建项目创建目录安装VuePress初始化项目创建文档修改package.json运行项目修改README.md的编码显示官方默认主题创建.vuepress文件创建config.js修改README.md补充logo资源运行效果更多默认主题配置开源主题vuepress-theme-reco安装脚手架初始化项目安装npm运…

10.2、Django入门--前台管理

文章目录1、URLconf 路由管理展示首页2、视图函数处理业务逻辑展示书籍的详细页3、模板管理实现好看的HTML页面3.1 模板引擎配置3.2 模板语法:变量3.3 模板语法: 常用标签3.4 主页与详情页前端HTML设计常用的HTML编写基础标题标签列表标签图片标签链接标签表格标签表…

RabbitMQ 第一天 基础 6 SpringBoot 整合RabbitMQ

RabbitMQ 【黑马程序员RabbitMQ全套教程,rabbitmq消息中间件到实战】 文章目录RabbitMQ第一天 基础6 SpringBoot 整合RabbitMQ6.1 SpringBoot 整合 RabbitMQ【生产者】6.1.1 生产者6.2 SpringBoot 整合 RabbitMQ【消费者】6.2.1 消费者6.3 小结第一天 基础 6 Spri…

day3-javascript

HTML的注释 CSS的注释 Javascript的注释是不一样的 JQuery JQuery是一个JavaScript的第三方模块 基于JQuery,自己开发一个功能。 现成的工具 依赖jQuery,例如BootStrap动态效果

Vue事件处理的基本使用

前言 事件处理在vue中也是非常重要的一项技术,它类似于js的事件处理,但是也有不同,下面就简单介绍一下在vue中如何进行事件使用以及一些要点 1 事件基本使用 在这里我们使用单击事件为例,简单讲讲在vue中单击事件的编写以及细节…

Spring Bean作用域

目录 什么是作用域呢 ? 那什么又是Spring Bean的作用域呢 ? Spring框架默认Bean作用域是什么呢 ? Spring Bean的作用域都有哪些呢 ? 如何设置Bean作用域 什么是作用域呢 ? 在JavaSE中,作用域就是指一个变量可生效的范围. 就比如一个变量的作用域是方法的代码块的范围…

将单向链表按照目标值value 划分成左边小,中间等,右边大的形式,给定一个单链表,判断单链表的值是否是回文结构【图文解释包你看懂】

将单向链表按照目标值value 划分成左边小,中间等,右边大的形式 例如 1 -> 3 -> 5-> 3 -> 7 按照value 3划分 1-> 3-> 3 -> 5 -> 7 解题思路:给定值为 value 用6个变量,分别表示 小于value 的Head sH &…

第11章_数据库的设计规范(理论了解)

第11章_数据库的设计规范 范式 2.3键和相关属性的概念 范式的定义会使用到主键和候选键,数据库中的键(Key)由一个或者多个属性组成。数据表中常用的几种键和属性的定义: 超键︰能唯─标识元组的属性集叫做超键。候选键︰如果超键不包括多余的属性,那…

WEB1.0起源:全球首个网站info.cern.ch

伯纳斯李(图)1990年创立第一个网站。 info.cern.ch是世上第一个网站,提供有关万维网的资料。 info.cern.ch这个网站依然运作如常。 英国科学家蒂姆伯纳斯-李 (Tim Berners-Lee) 于 1989 年在 CERN 工作期间发明了万维网 (WWW)。Web 最初的构思…