通信工程师互联网技术比较与分析

互联网技术 责任编辑:xuellee 2013-11-25

摘要:虽然BIA与SOCKS64都是为了使IPv4能够顺利过渡到IPv6的技术,都是基于SOCKS的技术,都是采用双栈主机机制,都需要使用伪IP地址,但是它们的出发点却各有侧重,也各有优缺点。

4.8.5.3 技术比较与分析
虽然BIA与SOCKS64都是为了使IPv4能够顺利过渡到IPv6的技术,都是基于SOCKS的技术,都是采用双栈主机机制,都需要使用伪IP地址,但是它们的出发点却各有侧重,也各有优缺点。
(1)适用性
BIA与SOCKS64都可以使IPv4应用在不作任何修改的情况下与IPv6主机通信。BIA技术提供的是具有IPv4和IPv6协议的双栈主机直接与IPv6主机通信的解决方案,SOCKS64技术提供IPv4主机通过双栈网关与IPv6主机通信的解决方案。
  (2)预留IP地址的使用
BIA与SOCKS64都使用预留IP地址。虽然BIA技术中的地址池可以在节点中以不同的粒度来实现,然而,如果有大量的IPv4应用和IPv6的主机通信,就有可能耗尽可用地址,导致IPv4应用不能和IPv6的主机通信,所以需要对地址池内的地址进行有效管理。SOCKS64技术由于主要使用FQDN信息、通过DNS域名解析代表在SOCKSLib处负责域名管理工作,伪地址必须被作为临时值来处理,所以不需要为地址映射预留很大的地址空间,也不需要复杂的地址申请和垃圾收集机制。
(3)对应用的支持
BIA与SOCKS64的初衷都是不需要修改IPv4应用而与IPv6主机通信,但是它们对应用的支持都不能达到尽善尽美。对于BIA来说,由于需要转换嵌在应用层协议(例如FTP)中的IP地址,所以这种机制可能不适用于那些负载中包含地址的新应用。BIA仅支持单播通信,如果要支持组播通信,还需要在函数映射模块中增加新的功能。BIA只是从语义上将IPv4SocketAPI函数转换成相应的IPv6SocketAPI函数,如果要在API函数中转换内嵌于应用层协议的IP地址,其实现有赖于操作系统。由于IPv6的AH具有新的高级参数,转换带有这种参数的IPv6API是很困难的,因此接收到的带有高级参数的IPv6数据包会被丢弃。对于SOCKS64来说,虽然它是直接继承SOCKS机制的技术,但是在使用时仍有一定的问题。SOCKSv5协议由三个命令(CONNECT、BIND和UDPASSOCIATE)组成,所有这三个命令在SOCKS64中都能使用。其中,主要的命令也是使用最频繁的命令CONNECT没有明显的弱点,可以随意使用;而BIND命令基本上是为支持FTP类型应用的反向通道聚合而设计的,所以通常BIND命令的使用可能会产生一些问题;UDPASSO?CIATE命令基本上是为简单UDP应用(如Archie)而设计的,所以在支持同时使用TCP和UDP的一大类应用时通用性还不够。另外,如果有些应用使用了非常灵活的、特别的方式创建连接,SOCKS64技术就无能为力了。
  (4)DNS查询结果与服务器应用程序版本不匹配问题
对于BIA,若正在使用的服务器端应用不支持IPv6,但是它又运行在一台支持其他IPv6服务的主机上,而且这台主机还在DNS中以AAAA型记录出现,在DNS的查询结果和服务器应用的版本之间就会出现不匹配的情况。这时,使用BIA的IPv4客户端应用可能无法连接到这个服务器端应用上。解决方法是尝试所有在DNS中列出的地址,而不应只尝试一次即宣告失败。但是对于UDPSocket,即便可能,BIA也很难发现可工作的IP地址,因此应用服务必须重复尝试各种可能的地址,直到发现一个可用地址为止。另种避免这种问题的方法是仅当通信对方的A型记录不存在时,BIA才起作用。这样,一台采用BIA的双栈主机上的应用到另一台双栈主机的数据流只使用IPv4协议。对于SOCKS64则不存在这个问题。
(5)安全性
对于BIA,由于采用了API翻译器,很难实现端到端的安全性,而且传输层和应用层的安全也同样无法实现。但是,由于翻译机制发生在SocketAPI层,所以采用BIA机制运行IPv4应用的主机和其他IPv6主机通信时,可以利用网络层的安全策略(如IPSec)。另外,由于使用预留IP地址,有出现地址耗尽的可能,这就使得使用这种机制的主机容易遭到拒绝服务攻击。对于SOCKS64,由于它是直接建立在SOCKSv5协议基础上的,其安全方面的特点与SOCKSv5相一致。它同样不提供从原始源节点到最终目的节点的整体端到端的安全保证。但是由于它建立了应用层两个“分开的”连接的中继,所以端到端的安全就由这两个被中继的链接来提供保证。
综上所述,基于SOCKS的IPv4向IPv6过渡技术主要有BIA与SOCKS64两种,它们都采用双栈主机和IPv4预留地址机制,使IPv4应用在不作任何修改的情况下与IPv6主机通信。BIA技术提供的是具有IPv4和IPv6协议的双栈主机直接与IPv6主机通信的解决方案,SOCKS64技术提供的是IPv4主机通过双栈网关与IPv6主机通信的解决方案。这两种不同的解决方案有各自的优缺点,在实际应用时,可以根据具体情况确定采用哪种技术,并根据需要对它们加以改进。

返回目录:通信工程师互联网技术知识点IPv6协议汇总

编辑推荐:

中级通信专业实务互联网技术教程汇总

中级通信专业实务传输与接入教程汇总

通信专业实务考试设备与环境教程汇总

通信专业实务考试交换技术教程汇总

更多资料
更多课程
更多真题
温馨提示:因考试政策、内容不断变化与调整,本网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准!

通信工程师备考资料免费领取

去领取

距离2025 通信工程师考试

还有
  • 1
  • 3
  • 2
专注在线职业教育24年

项目管理

信息系统项目管理师

厂商认证

信息系统项目管理师

信息系统项目管理师

!
咨询在线老师!