位置:51电子网 » 技术资料 » 通信网络

嵌入式网关设备的设计与实现

发布时间:2008/5/29 0:00:00 访问次数:580

上世纪90年代以来,基于微处理器的测控技术发展十分迅速,特别是internet的发展,使得嵌入式设备产生连接internet的需求。要让微处理器接入internet,成为internet上的一个独立结点,必须给它分配一个全球唯一的地址。而在过去的几十年里,有浩如烟海的微处理器用于各种各样的场合,如智能仪器、工业自动控制、家庭自动化等,要想给这些微处理器都分配一个地址是办不到的。这是因为internet协议的现在版本为ipv4,该版本采用32位地址方案,每个地址包含网络号和主机号。理论上有超过40亿个地址,但由于分级地址管理和早期地址分配的不科学,浪费了上千万的地址,使全球ip地址的分配已经面临沉重压力。而现今it已进入后pc时代,各种嵌入式网络应用成爆炸式发展,现有ip地址方案根本无法满足需求。因此解决嵌入式设备上网的地址分配问题,已成为影响到嵌入式设备发展的重要因素。

本文应用nat技术开发嵌人式设备解决了internet地址耗尽问题。nat技术最初由国际互联网标准组织ietf(internetengineeringtaskforce,即internet工程任务组)于1994年公布,并于1996年成立nat工作小组进行专门的研究。nat技术很好地解决了嵌人式internet应用中ipv4地址空间的耗尽问题,nat的后继版本在解决协议的转换、升级、外网对内网节点的访问等诸多问题都有很多应用,因此应用nat技术可以在很大程度上促进嵌入式internet设备的应用。

nat协议

nat实际上是一种ip欺骗技术,就是在专用网络和公共网络之间进行地址的转换,从而实现内网到外网或者外网到内网的访问。nat有三种类型:静态nat(static nat)、nat池(poolednat)和端口nat(npat)。其中静态nat的实现比较简单,内部网络的每个虚拟地址都有外部真实地址与之相对应,nat只要将对应的内外网地址进行一对一的转换即可。静态nat不能解决ip地址的耗尽问题。nat池是一种动态nat,它先定义一系列真实ip,nat将来自内部网络的虚拟ip映射成地址池中外网的合法ip地址。动态nat的实现相对静态复杂一些,当有内网节点需要访问外网时,nat在地址池中选择一个空闲的外网ip进行转换,其实现也是一对一的转换,当池中所有地址都被使用时,nat会拒绝新的nat请求直到有节点放弃nat转换。在嵌入式设备连接网络需要大量ip地址的情况下,上述两种nat技术都不能很好的解决地址的耗尽问题,而端口nat技术彻底解决了地址的短缺问题。

在internet上用(源地址:源端口号、目的地址:目的端口号)来标识一个会话,端口nat正是将网络层端口参与到地址转换,其实现方法是将多个内部虚拟网地址及其网络层端口映射到一个外部真实ip地址的不同端口上。nat可以实现由内网主动访问外网,但是在嵌入式测控系统中,访问通常由外网主动发起,nat实现反方向地址转换。

下面以图示说明端口nat的工作过程。如图1所示的网络拓扑结构为一个应用端口nat的基本网络。内网段(192.168.0.0)为虚拟网,其上可以连接多个嵌入式网络化仪器,设有a设备其地址为192.68.0.125,在90端口提供web服务;外网段(202.119.101.192)为真实网,设有一台pc其地址为202.119.101.16,nat设备的对外接口地址为202.119.101.22,其对内接口地址为192.168.0.1。外网节点访问内网节点的过程如下:

(1) pc上应用程序生成一个数据报,并通过网络发送给nat网关。设其源地址、源端口号、目的地址、目的端口号分别为202.119.101.16:2200和202.119.101.22:90。

(2) nat网关接受该数据报后,检查端口地址映射表,发现202.119.101.22:90映射为内部网络节点192.168.0.125:90,nat网关将数据报的地址和端口号转换成内部虚拟网相应地址和端口号,并在转换关系缓冲区中记录下转换关系,以便反向数据的转换,转换后的数据报地址和端口号为192.168.0.1:2345和192.168.0.125:90,nat将转换后的数据报通过虚拟网发送给内部节点。

(3) 内网节点收到数据报后提交给上层协议处理,上层协议处理后产生回应数据报,其地址和端口号为192.168.0.125:90、192.168.0.1:2345,内网节点将回应数据报发送给nat网关。

(4) nat网关接收到该回应数据报后,根据数据报的地址和端口号在缓冲区中查找对应转换关系,实现与第二步相反的转换,修改后的数据报地址和端口号为202.119.101.22:90、202.119.101.16:2200,nat最后再将修改后的ip数据报发同给外网节点。

至此,基于端口nat的地址转换过程结束,实现了外网节点对内网节点的访问。外网节点只与网关设备通信,并不知道内部网络的存在,内部网络也只与网关通信,并不知道外网的存在。 系统硬件设计

nat网关设备可以有小型机或pc充当,由于pc资源丰富,有完备的操作系统和大量应用软件,其实现相对

上世纪90年代以来,基于微处理器的测控技术发展十分迅速,特别是internet的发展,使得嵌入式设备产生连接internet的需求。要让微处理器接入internet,成为internet上的一个独立结点,必须给它分配一个全球唯一的地址。而在过去的几十年里,有浩如烟海的微处理器用于各种各样的场合,如智能仪器、工业自动控制、家庭自动化等,要想给这些微处理器都分配一个地址是办不到的。这是因为internet协议的现在版本为ipv4,该版本采用32位地址方案,每个地址包含网络号和主机号。理论上有超过40亿个地址,但由于分级地址管理和早期地址分配的不科学,浪费了上千万的地址,使全球ip地址的分配已经面临沉重压力。而现今it已进入后pc时代,各种嵌入式网络应用成爆炸式发展,现有ip地址方案根本无法满足需求。因此解决嵌入式设备上网的地址分配问题,已成为影响到嵌入式设备发展的重要因素。

本文应用nat技术开发嵌人式设备解决了internet地址耗尽问题。nat技术最初由国际互联网标准组织ietf(internetengineeringtaskforce,即internet工程任务组)于1994年公布,并于1996年成立nat工作小组进行专门的研究。nat技术很好地解决了嵌人式internet应用中ipv4地址空间的耗尽问题,nat的后继版本在解决协议的转换、升级、外网对内网节点的访问等诸多问题都有很多应用,因此应用nat技术可以在很大程度上促进嵌入式internet设备的应用。

nat协议

nat实际上是一种ip欺骗技术,就是在专用网络和公共网络之间进行地址的转换,从而实现内网到外网或者外网到内网的访问。nat有三种类型:静态nat(static nat)、nat池(poolednat)和端口nat(npat)。其中静态nat的实现比较简单,内部网络的每个虚拟地址都有外部真实地址与之相对应,nat只要将对应的内外网地址进行一对一的转换即可。静态nat不能解决ip地址的耗尽问题。nat池是一种动态nat,它先定义一系列真实ip,nat将来自内部网络的虚拟ip映射成地址池中外网的合法ip地址。动态nat的实现相对静态复杂一些,当有内网节点需要访问外网时,nat在地址池中选择一个空闲的外网ip进行转换,其实现也是一对一的转换,当池中所有地址都被使用时,nat会拒绝新的nat请求直到有节点放弃nat转换。在嵌入式设备连接网络需要大量ip地址的情况下,上述两种nat技术都不能很好的解决地址的耗尽问题,而端口nat技术彻底解决了地址的短缺问题。

在internet上用(源地址:源端口号、目的地址:目的端口号)来标识一个会话,端口nat正是将网络层端口参与到地址转换,其实现方法是将多个内部虚拟网地址及其网络层端口映射到一个外部真实ip地址的不同端口上。nat可以实现由内网主动访问外网,但是在嵌入式测控系统中,访问通常由外网主动发起,nat实现反方向地址转换。

下面以图示说明端口nat的工作过程。如图1所示的网络拓扑结构为一个应用端口nat的基本网络。内网段(192.168.0.0)为虚拟网,其上可以连接多个嵌入式网络化仪器,设有a设备其地址为192.68.0.125,在90端口提供web服务;外网段(202.119.101.192)为真实网,设有一台pc其地址为202.119.101.16,nat设备的对外接口地址为202.119.101.22,其对内接口地址为192.168.0.1。外网节点访问内网节点的过程如下:

(1) pc上应用程序生成一个数据报,并通过网络发送给nat网关。设其源地址、源端口号、目的地址、目的端口号分别为202.119.101.16:2200和202.119.101.22:90。

(2) nat网关接受该数据报后,检查端口地址映射表,发现202.119.101.22:90映射为内部网络节点192.168.0.125:90,nat网关将数据报的地址和端口号转换成内部虚拟网相应地址和端口号,并在转换关系缓冲区中记录下转换关系,以便反向数据的转换,转换后的数据报地址和端口号为192.168.0.1:2345和192.168.0.125:90,nat将转换后的数据报通过虚拟网发送给内部节点。

(3) 内网节点收到数据报后提交给上层协议处理,上层协议处理后产生回应数据报,其地址和端口号为192.168.0.125:90、192.168.0.1:2345,内网节点将回应数据报发送给nat网关。

(4) nat网关接收到该回应数据报后,根据数据报的地址和端口号在缓冲区中查找对应转换关系,实现与第二步相反的转换,修改后的数据报地址和端口号为202.119.101.22:90、202.119.101.16:2200,nat最后再将修改后的ip数据报发同给外网节点。

至此,基于端口nat的地址转换过程结束,实现了外网节点对内网节点的访问。外网节点只与网关设备通信,并不知道内部网络的存在,内部网络也只与网关通信,并不知道外网的存在。 系统硬件设计

nat网关设备可以有小型机或pc充当,由于pc资源丰富,有完备的操作系统和大量应用软件,其实现相对

相关IC型号

热门点击

 

推荐技术资料

耳机的焊接
    整机电路简单,用洞洞板搭线比较方便。EM8621实际采... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!