微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 模拟电路设计 > UPnP NAT Traversal 常见问题

UPnP NAT Traversal 常见问题

时间:09-24 来源: 点击:

问:什么是 UpnP?

答:通用即插即用 (UPnP) 是一种用于 PC 机和智能设备(或仪器)的常见对等网络连接的体系结构,尤其是在家庭中。UPnP 以 Internet 标准和技术(例如 TCP/IP、HTTP 和 XML)为基础,使这样的设备彼此可自动连接和协同工作,从而使网络(尤其是家庭网络)对更多的人成为可能。

问:UPnP 对消费者意味着什么?

答:简单、更多选择和更新颖的体验。包含通用即插即用技术的网络产品只需实际连到网络上,即可开始正常工作。实际上,UPnP 可以和任何网络媒体技术(有线或无线)协同使用。举例来说,这包括:Category 5 以太网电缆、Wi-Fi 或 802.11B 无线网络、IEEE 1394 ("Firewire")、电话线网络或电源线网络。当这些设备与 PC 互连时,用户即可充分利用各种具有创新性的服务和应用程序。

问:什么是 UPnP 论坛?

答:"通用即插即用论坛"是一个开放式业界协会,成立于 1999 年 6 月,旨在帮助定义 UPnP 标准以简化家庭(长远上讲则是企业)智能设备的联网。为实现上述目标,该论坛正在制定和公布 UPnP 设备控制协议及服务控制协议。截止到 2001 年 6 月初,已有 350 多家公司成为 UPnP 论坛的成员。UPnP 论坛受由 22 名成员组成的 UPnP Steering Committee(UPnP 指导委员会)的管理。此外还设立了技术委员会、市场推广委员会及各种工作委员会(分别面向某种特定的设备),旨在努力实现该机构的目标。有关论坛成员的列表及加入论坛的信息,请见论坛 Web 站点。

问:UPnP 的技术要素是什么?

答:UPnP 范围广泛,原因是它面向的是家庭网络、临近网络及小型企业和商住楼中的网络。在网络控制设备的管理下,它支持任何两个设备之间的数据通讯。UPnP 不依赖于特定的操作系统、编程语言或物理媒体。

UPnP 支持零配置网络及自动查找功能,这样以来,设备即可动态加入网络,获取 IP 地址,宣布自己的名称,根据需要提供功能,并了解其它设备的存在和功能。DHCP 和 DNS 服务器为可选项。只要在网络上可用,即可加以使用。此外,设备还可自动平稳地脱离网络,而不会遗留任何不必要的状态。

UPnP 汲取了 Internet 的成功之处并继承了它的组件,包括 IP、TCP、UDP、HTTP 及 XML。UPnP 中涉及了多供应商之间的协作,旨在建立标准的设备控制协议 (DCP)。与 Internet 类似,这些协议以公告式线协议为基础,表示为 XML 形式,且通过 HTTP 进行通讯。

问:什么是 NAT?为什么使用它?

答:"网络地址转换"是一种 Internet Engineering Task Force (IETF) 标准,用于允许专用网络(使用专用地址范围,例如 10.0.x.x、192.168.x.x、172.x.x.x)上的多台 PC 机或设备共享单个、可全局路由的 IPv4 地址。经常使用 NAT 的一个主要原因就是 IPv4(最新一代 Internet)地址的资源日渐紧缺。

在构成公用 Internet 与专用局域网之间屏障的网关设备中,可以使用 NAT。当专用局域网的 IP 数据包经过网关时,NAT 将把专用 IP 地址和端口号转换为公用 IP 地址和端口号,从而跟踪这些转换以保持各个会话不变。Microsoft® Windows® XP 和 Windows Me 操作系统中的"Internet 连接共享"及许多 Internet 网关设备都使用 NAT,尤其是在通过 DSL 或电缆调制解调器连接宽带网的情况下。随着越来越多的家庭和小型企业将自己的 PC 机连接起来并共享 Internet 连接,NAT 的使用量正急剧增加。

问:NAT 的问题在哪?

答:简言之:NAT 会"瓦解"许多家庭或小型企业中日渐需要的最新型 PC 和家庭网络技术,例如多玩家游戏、实时通讯及其它对等服务。如果在公用 Internet 上使用专用地址或同时使用同一端口号,这些应用程序就会中止。应用程序必须使用公共地址,且每个会话都须使用唯一的端口号。大型机构有专门的 IT 人员来确保其公司应用程序在 NAT 上正常使用,但较小的机构和消费者却不具备这样奢侈的条件。UPnP NAT Traversal 可以自动解决 NAT 给应用程序带来的许多问题,使之成为小型企业和消费者理想的解决方案。

问:谁提出的 NAT Traversal 解决方案?

答:NAT Traversal 解决方案是 UPnP IGD Working Committee 为制定 Internet 网关设备 (IGD) 规范所从事工作的一部分。UPnP 的成员公司可以加入该委员会,也可以只选择跟踪其工作进展。委员会的主席是 Intel 公司的 Prakash Iyer (prakash.iyer@intel.com)。许多公司,包括 Microsoft,都在为此而努力。

问:是否有其它途径来解决 NAT Traversal 的问题?如果有,为什么将 UPnP 视为最佳选择?

答:是的,确实有其它途径来解决此问题,但目前还没有其它机制来作为解决该问题的业界标准,从而能对消费者自动实现,而对开发人员则普遍可行。其它方案或者要求用户进行人工干预,或者要求 Internet 网关设备制造商进行专门的开发,并要求软件开发人员处理 NAT Traversal 对特殊应用程序的需要。因此,只有 UPnP 能解决该重大问题。

用户的工作: NAT Traversal 的手工干预法要求用户使用浏览器(PC 机上一种基于图形用户界面的工具)或 PC 上的命令行界面工具来更改家中 Internet 网关设备上的某些设置。尽管有些热衷技术的用户不会有很大困难,但许多用户却感到困难重重。此外,许多用户甚至不知道 NAT Traversal 问题正对其 Internet 服务的使用造成干扰。用户可能想体验一种多玩家游戏或使用其它某些对等服务,却发现由于某种原因而无法连接。这会导致用户采取疑难解答步骤、寻求电话支持、感到不满,甚至以后不打算使用新的服务或不打算尝试新的技术感受。

开发人员的工作: 为避免要求用户手动解决此 NAT Traversal 问题,有些 Internet 网关设备制造商已编写出应用层网关支持,并将其包含到设备中。该应用层网关软件的设计思路是特殊的应用程序。换言之,设备制造商将编写和测试特殊的代码,自动使一个应用程序完成 NAT。如果该应用程序软件进行了更新,则设备制造商所编写的应用层代码将必须重新进行更新和测试。当只需要考虑几个对等或相关的应用程序时,这种一对一解决 NAT Traversal 问题的方式对于设备制造商而言是可管理的,但它无法对数百或数千个应用程序伸展自如,这时不仅开发成本高,并可能需要有关这些应用程序各自原理方面的知识。解决该问题较好的方法就是让设备制造商为设备添加能理解 UPnP 的软件或固件,然后让其它设备和软件能利用同一技术与 NAT 设备进行通讯。现在只有 UPnP 能够完成这种职责。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top