第四层到第七层的高层交换技术及其应用

晨曦之光 发布于 2012/03/09 14:55
阅读 64
收藏 0

 

1 前言

Internet的特点就是不断变化发展,目前网络上的信息量和业务量都呈现爆炸性的增长趋势。不断增长的负荷和新需求的出现,使得用单台服务器处理应用服务的结构已成为过去,取而代之的是以单一虚拟IP地址(VIP)来代表整个服务器集群,由集群中的多台服务器来分摊处理访问流量。集群的组成部分也在发生变化,过去一台Web服务器必须处理大部分的静态内容,现在可以由应用服务、高性能数据库和多媒体服务器等协同服务器集群来支持复杂的Web应用。

这些不断增长的服务集群和服务需求要求更高效率和更高服务质量的数据交换技术。数据交换技术已经历了过去的那种单纯的电路交换逐渐发展到二层、三层甚至更高层的交换结构的结合。交换的内部机制也从存储转发、直接连通过渡到路由交换、三层交换以及最新提出四层及更高层的交换。这些先进的交换技术在解决局域网和互联网络的带宽及容量问题上发挥了很好的作用。

2 传统的二、三层交换

传统的第二层交换技术是在最初的总线集线器和网桥的基础上发展而成的,一般用于局域网的数据交换上,是作为对共享式局域网提供有效的数据交换的解决方案而出现的,它可以使每个用户尽可能地分享到最大带宽。

第二层交换技术是在OSI七层网络模型中的第二层,即在数据链路层上进行操作的。它对数据包的转发是建立在MAC(物理端口)地址的基础之上的,对于上层协议来说,它是透明的。交换机在转发数据包时无须知道数据包的IP地址,只需其物理地址即MAC地址。交换机在操作过程中不断地维护着一个简单的地址表,它说明了MAC地址和端口的对应关系,所以当交换机收到一个数据包时对比数据包的MAC地址就可以知道是哪个端口的数据包。整个过程全部是在硬件控制下实现的,因此速度相当快,大大地加速了数据包的传输。

第二层交换非常有利于建立LAN内部或者VLAN之间的数据交换,可以大大提高数据在LAN中的通信速度。但是第二层交换只是一种简单的基于MAC层的数据交换,所以对于不同的IP子网之间的数据交换还是要经过路由器先进行路由。在有大量数据跨越子网的情况下,传统的路由器又成为了网络通信中的瓶颈,这个时候就引入了第三层交换的概念。

第三层交换就是在OSI参考模型的第三层进行操作。第三层交换技术也称为IP交换技术、交换路由技术。这是一种利用第三层协议中的IP数据包头信息来加强第二层交换功能的机制。网络中的大量数据往往越过本地的网络在网际间传送,因而路由器常常不堪重负地成为瓶颈。在这种情况下要是在源地址和目的地址之间有一条更为直接的第二层通路,就没有必要每次都经过路由器的路由判断来转发数据包。第三层交换使用第三层路由协议确定传送路径,此路径可以只用一次,也可以存储起来,供以后使用,之后数据包通过一条虚电路不需要经过路由判断而直接快速发送,最终目的是将数据通信时的路由次数降至最低。这样的第三层交换式路由器比仅仅路由式的路由器性能上要提高非常多,一般称之为路由交换机。

在第三层交换机连接的情况下,主机A跟主机B第一次通过交换机通信,中间的交换机便会把A和B的IP地址及它们的MAC地址记录下来,当其它主机如C要和A或B通信时,针对C所发出的寻址封包,第三层交换机送出一个回复告诉它A或B的MAC地址,以后C当然就会用A或B的MAC地址“直接”和它通信,不需要理会A、B和C是否属于不同的子网,这样就不用每次进行路由,避免每次路由操作这样一个速度相对比较慢的过程。

将第二层交换和第三层交换结合在一起就成为一种通过第二层连接网络链路在子网中指引业务流,通过第三层交换或路由器将包从一个子网传到另一个子网。目前针对第二层、第三层结合的技术已提出了很多具体的实现方案,和以ATM为代表的链路层结合的MPLS、MPOA技术最为突出。

3 第四层交换技术

第二层与第三层交换产品在解决局域网和网络互联的QoS问题上发挥了很好的作用,但是对于当前的网络来说还是不够的,还需要进一步地提高QoS性能,这就需要在更高层上引入交换的概念。

我们知道OSI协议参考模型定义了7层结构,网络层以上也就是第四层即传输层,传输层主要负责端对端的通信。传输层有很多的协议,常用的有TCP、UDP协议,这些协议承载了许多不同的业务,这些业务通常是由一些诸如HTTP、FTP、NFS、Telnet等协议表示,这些协议的类型由TCP或UDP端口地址来决定,就如同第二层的传输是依靠MAC地址来寻址,第三层的传输是依靠IP地址来寻址,那么第四层的主要表示就是传输层的端口地址。通过端口地址可以区分数据包是由哪个传输层协议传送的。

分配端口号的清单可以在RFC1700中找到。TCP/UDP端口号提供的附加信息可以为网络交换机所利用,这是第四层交换的基础。

第四层交换中数据包的传输不仅仅依据MAC地址(第二层交换)或源/目标IP地址(第三层路由),还依据TCP/UDP端口地址(第四层地址),也就是说第四层交换除了考虑三层的逻辑地址外还要考虑对端口地址的处理。如同上面所描述的那样,端口地址代表了不同的业务协议,所以第四层交换不仅仅进行了物理上的交换,还包括了业务上的交换。所以说第四层交换的交换域是由源端和终端IP地址、TCP和UDP端口共同决定。因此,第四层交换机是真正的“会话交换机”。

由于带有业务信息,所以第四层交换机就带有了业务智能,可以做出向何处转发会话传输流的决定。对于Internet服务提供商或内容提供商来说,第四层交换的这个功能是尤其重要的。不断增长的负荷和需求的出现,使得用单台服务器处理应用服务的结构已成为过去,一般网络的服务提供商采用多种不同系统来构架一种应用的大型企业数据中心,数据在很多服务器上进行镜像复制。第四层交换在这样的情况下是大有可为的,可以将会话转入性能最佳的目的机器上。

第四层交换尤其可以应用在以单一虚拟IP地址(VIP)来代表整个服务器集群的情况下。具有第四层功能的交换机能够起到与服务器相连接的"虚拟IP"(VIP)前端的作用。每台服务器和支持单一或通用应用的服务器组都配置同样的一个VIP地址。这个VIP地址作为对外提供统一服务的目的地。当某用户申请应用时,用户请求的数据包先通过第三层路由器发送到具有第四层交换功能的交换机,然后第四层交换机可以根据会话和应用层信息做出转发决定,将用户的请求根据不同的规则转发到"最佳"的服务器上。将"最佳"服务器地址中的IP取代VIP,并将连接请求传给相应服务器。因此,第四层交换技术是用于传输数据和实现多台服务器间负载均衡的理想机制。

第四层交换技术通过硬件来实现可以做成第四层交换机,它可以实现基于端到端的服务质量要求对所有联网设备的负载进行细致的均衡,以保证客户机与服务器之间数据平滑地流动。

第四层交换技术的关键问题是如何确定传输流转发给哪台最可用的服务器,也就是策略选择问题。选择策略可以根据不同的需要来制定,对高优先权的业务应首先保证它的QoS,将这种业务引向最大可利用的服务器中。而QoS要求小的就可以作为一般负载处理。目前应用神经网络的学习算法实现在学习中动态的调整策略是一种非常好的实现方法。

4 应用交换技术

在第四层交换大大地提高了网络性能和QoS保证之后,在更高的层次上也引入了交换的概念,可以称之为第七层交换技术,或者高层智能交换。

这时候的交换突破了一般意义上的交换的概念,开始进入以进程和内容级别为主的交换范围。高层由于和应用相关,我们说这时候的交换就有了智能性。交换机具有了区别各种高层的应用和识别内容的能力。这时的交换机不仅能根据数据包的IP地址或者端口地址来传送数据,而且还能打开数据包,进入数据包内部并根据包中的信息做出负载均衡、内容识别等判断。

对于某一个端口来说,我们在第四层交换时候可以对端口进行分析来获得较好的QoS,但是对于通过TCP/IP端口的传输流我们没有办法识别,只能对所有属于这个端口的传输流统一对待,而服务提供商或许需要其中的某些传输流具有高的QoS优先处理权或者将某些流引向性能高的处理机中。而第七层的智能交换能够实现进一步的控制,即对所有传输流和内容的控制。这种交换机可以打开传输流的应用/表示层,分析其中的内容,因此可以根据应用的类型而非仅仅根据IP和端口号做出更智能的流向决策。其中的一个典型例子就是根据URL的具体内容的识别交换。

第七层交换技术可以定义为数据包的传送不仅仅依据MAC地址(第二层交换)或源/目标IP地址(第三层路由)以及依据TCP/UDP端口(第四层地址),而是可以根据内容(表示/应用层)进行。这样的处理更具有智能性,交换的不仅仅是端口,还包括了内容,因此,第七层交换机是真正的"应用交换机"。

这类具有第七层认知的交换机可以应用在很多方面,比如保证不同类型的传输流被赋予不同的优先级。它可以对传输流进行过滤并分配优先级,使你不必依赖于业务或网络设备来达到这些目的,譬如,网络电子商务提供商使用80端口提供用户服务,但是对于不同的Web请求他们希望不同对待,比如浏览一般商品的Web请求的级别比用户发出的定购Web请求要低一些,而且处理起来也不一样。这样需要识别80端口中的具体的URL内容来进行判断,赋予不同的优先权交换到不同的处理器上去。更进一步,可能需要对不同级别的用户的Web请求给予不同QoS优先权,这样就需要对数据请求的内容进行识别,这时候对交换的智能要求就非常高了。

目前关于第七层交换功能还没有具体的标准。第七层交换功能和目前很多类似的技术具有很大的互补性,它可以和其他的网络服务和谐地共存。但是第七层交换和类似的解决方案之间最大的优势,也就是交换技术具有的最大优势,就是高速而且不影响智能处理。采用第七层交换技术可以以交换的线速度做出更智能性的传输流内容的决策。用户将自由地根据得到的信息就各类传输流和其目的地做出决策,从而优化网络访问,为最终用户提供更好的服务。

5 高层交换技术与Web交换机

高层交换技术的一个典型应用就是Web交换机。目前Internet网上提供应用的主要方式就是网站,在网站上的信息量和访问量急剧增长的前提下,怎样为用户提供更多的服务,使每个用户都可以得到QoS保证是一个越来越重要的问题。网站的运营商们正在尝试通过架构新的体系结构以适应其业务的增长。

怎样将数据中心的各种设备,包括各种互联网服务器、防火墙、高速缓冲服务器、数据仓库和网关等组织起来提供对外界面一致和QoS保证的服务,同时提供管理、路由和负载均衡传输成为一个焦点问题。所以必须提供一种处于网络中心地位的交换机,来组织数据中心,我们称之为Web交换机,Web交换机的基本功能是:
· 组织数据中心;
· 提供对外一致的服务界面;
· 管理数据的流向、路由;
· 负载均衡;
· 提供QoS和CoS(服务等级);
· 请求会话定向。

可以看出所需要的Web交换技术仅仅用传统的交换机是无法实现的,必须结合高层交换机的技术来实现。为了实现上述的功能Web交换机必须检查4~7层的协议字段,获取信息来处理数据流的管理和定向。

Web交换机的设计比较复杂,目前Web交换机也只是采用了三层以上的高层交换技术的部分功能。主要的Web交换机设计方案有三种:集中式CPU模式、分布式处理系统和二级混合模式。每种设计方案是采用不同的方法把交换、控制和状态共享组合,因此各有优缺点。

6 结束语

本文探讨了目前出现的高层交换技术,可以看出由于网络的快速发展,高层交换技术的应用正在成为一种趋势,尤其是第四层交换发展迅速,已经有很多产品出现。但是更高层的交换产品由于其复杂性目前还处于一种概念或者说是实验阶段,要实现商用化还有很大的距离,但是综合它们其中一部分优点的Web交换机已经得到了应用,必将成为一个发展趋势。
  
 


原文链接:http://blog.csdn.net/21aspnet/article/details/1536760
加载中
返回顶部
顶部