一层交换 二层交换 三层交换 四层交换 七层交换 OSI参考模型

一层交换

【集线器】

一层交换其实不叫交换,常见的网络设备是集线器。

集线器又称HUB,工作在物理层,对信号只起简单的再生,放大,除噪声的作用。集线器连接的所有设备都处于同一个冲突域,所有的设备都处于同一个广播域,设备共享相同的带宽。集线器只是简单将信息洪泛给所有端口,目标主机接收并保留信号,非目标主机接收后丢弃。例如:对于10M的HUB而言10M是物理带宽,所有连接在这个HUB上的主机共享的有效带宽小于10M,因为以太网中包含冲突等事件产生的协议开销。

 

二层交换


【交换机】

二层交换是基于MAC地址的交换。

二层交换机是数据链路层的设备,它能够读取数据包中的MAC地址信息并根据MAC地址来进行交换。它隔离了冲突域,工作在数据链路层。所以交换机每个端口都是单独的冲突域。

二层交换机会维护有一张MAC地址表,这个地址表标明了MAC地址和交换机端口的对应关系。(机器A在开始发送时,已知目的IP地址,但尚不知道在局域网上发送所需要的MAC地址。要采用地址解析ARP协议来确定目的MAC地址。)比如1端口接A,3端口接B,当交换机收到要传给B的数据流时,交换机会查找自己的MAC地址表,确定应该将数据包由第3端口发给B。

如果在表中找不到相应的端口则把数据包广播到所有端口上,当目的机器对源机器回应时,交换机又可以学习一目的MAC地址与哪个端口对应,在下次传送数据时就不再需要对所有端口进行广播了。

 

三层交换

三层交换 = 二层交换+三层路由转发

【路由器】

二层交换是在同一个网段内进行的,也就是说是根据MAC地址来进行交换的,而三层交换是先路由再交换也就是说的一次路由多次交换,可以在不同的网段进行包的传递。

路由技术和二层交换看起来有点相似,其实路由和交换之间的主要区别就是交换发生在OSI参考模型的第二层(数据链路层),而路由发生在第三层(网络层)。

路由技术实质上来说不过两种功能:决定最优路由和转发数据包。路由算法在路由表中写入各种不同的信息,路由器会根据数据包所要到达的目的地选择最佳路径把数据包发送到可以到达该目的地的下一台路由器处。

 

路由器是在OSI七层网络模型中的第三层——网络层操作的。路由器内部有一个路由表,这表标明了如果要去某个地方,下一步应该往哪走。路由器从某个端口收到一个数据包,它首先把链路层的包头去掉(拆包),读取目的IP地址,然后查找路由表,若能确定下一步往哪送,则再加上链路层的包头(打包),把该数据包转发出去;如果不能确定下一步的地址,则向源地址返回一个信息,并把这个数据包丢掉。

路由交换机又称三层交换机,是一个带有第三层路由功能的第二层交换机,是二者的有机结合。

 

【例:一次选路,多次交换】

机器A在开始发送时,已知目的IP地址,但尚不知道在局域网上发送所需要的MAC地址。若两个机器不在同一子网内,如发送机器A要与目的机器C通信,发送机器A要向“缺省网关”发出ARP包,而“缺省网关”的IP地址已经在系统软件中设置。这个IP地址实际上对应第三层交换机的第三层交换模块。所以当发送机器A对“缺省网关”的IP地址广播出一个ARP请求时,若第三层交换模块在以往的通信过程中已得到目的机器C的MAC地址,则向发送机器A回复C的MAC地址;否则第三层交换模块根据路由信息向目的机器广播一个ARP请求,目的机器C得到此ARP请示后向第三层交换模块回复其MAC地址,第三层交换模块保存此地址并回复给发送机器A。以后,当再进行A与C之间数据包转发时,将用最终的目的机器的MAC地址封装,数据转发过程全部交给第二层交换处理,信息得以高速交换。既所谓的一次选路,多次交换。

第三层交换具有以下突出特点:有机的硬件结合使得数据交换加速;优化的路由软件使得路由过程效率提高;除了必要的路由决定过程外,大部分数据转发过程由第二层交换处理;

 

应用场景

二层交换机主要用在小型局域网中,机器数量在二、三十台以下,这样的网络环境下,广播包影响不大,二层交换机的快速交换功能、多个接入端口和低廉价格为小型网络用户提供了很完善的解决方案。

路由器端口类型多,支持的三层协议多,路由能力强,所以适合于在大型网络之间的互连。它的优势在于选择最佳路由,负荷分担,链路备份及和其他网络进行路由信息的交换等方面。

三层交换机是为IP设计的,接口类型简单,拥有很强二层包处理能力,所以适用于大型局域网,为了减小广播风暴的危害,必须把大型局域网按功能或地域等因素划他成一个一个的小局域网,也就是一个一个的小网段,这样必然导致不同网段之间存在大量的互访,单纯使用二层交换机没办法实现网间的互访,而单纯使用路由器,则由于端口数量有限,路由速度较慢,而限制了网络的规模和访问速度,所以这种环境下,由二层交换技术和路由技术有机结合而成的三层交换机就最为适合。

 

原文地址:http://blog.sina.com.cn/s/blog_6617106b0100nv9f.html

 

 

顺便附上OSI参考模型和定义,方便大家理解。

OSI是Open System Interconnect的缩写,意为开放式系统互联。 一般都叫OSI参考模型,是ISO(国际标准化组织)组织在1985年研究的网络互联模型。该体系结构标准定义了网络互连的七层框架(物理层数据链路层网络层传输层会话层表示层应用层),即ISO开放系统互连参考模型。在这一框架下进一步详细规定了每一层的功能,以实现开放系统环境中的互连性、互操作性和应用的可移植性。

 

简介编辑

开放系统OSI标准定制过程中所采用的方法是将整个庞大而复杂的问题划分为若干个容易处理的小问题,这就是分层的体系结构方法。在OSI中,采用了三级抽象,即体系结构、服务定义和协议规定说明。

OSI参考模型定义了开放系统的层次结构、层次之间的相互关系及各层所包含的可能的服务。它是作为一个框架来协调和组织各层协议的制定,也是对网络内部结构最精练的概括与描述进行整体修改。

OSI的服务定义详细说明了各层所提供的服务。某一层的服务就是该层及其下各层的一种能力,它通过接口提供给更高一层。各层所提供的服务与这些服务是怎么实现的无关。同时,各种服务定义还定义了层与层之间的接口和各层的所使用的原语,但是不涉及接口是怎么实现的。

OSI标准中的各种协议精确定义了应当发送什么样的控制信息,以及应当用什么样的过程来解释这个控制信息。协议的规程说明具有最严格的约束。

ISO/OSI参考模型并没有提供一个可以实现的方法。ISO/OSI参考模型只是描述了一些概念,用来协调进程间通信标准的制定。在OSI范围内,只有在各种的协议是可以被实现的而各种产品只有和OSI的协议相一致才能互连。这也就是说,OSI参考模型并不是一个标准,而只是一个在制定标准时所使用的概念性的框架。

在历史来看,在制定计算机网络标准方面起着很大作用的两大国际组织是CCITT和ISO。CCITT与ISO TC97的工作领域是不同的,CCITT主要是从通信角度考虑一些标准的制定,而ISO的TC97则关心信息的处理与网络体系结构。但是随着科学技术的发展,通信与信息处理的界限变得比较模糊了。于是,通信与信息处理就都成为了CCITT与TC97共同关心的领域。CCITT的建议书X.200就是开放系统互连的基本参考模型,它和ISO 7498基本是相同的。

最早的时候网络刚刚出现的时候,很多大型的公司都拥有了网络技术,公司内部计算机可以相互连接。可是却不能与其它公司连接。因为没有一个统一的规范。计算机之间相互传输的信息对方不能理解。所以不能互联。

划分原则编辑

ISO为了更好的使网络应用更为普及,就推出了OSI参考模型。其含义就是推荐所有公司使用这个规范来控制网络。这样所有公司都有相同的规范,就能互联了。提供各种网络服务功能的计算机网络系统是非常复杂的。根据分而治之的原则,ISO将整个通信功能划分为七个层次,划分原则是:

(1)网路中各节点都有相同的层次;

(2)不同节点的同等层具有相同的功能;

(3)同一节点内相邻层之间通过接口通信;

(4)每一层使用下层提供的服务,并向其上层提供服务;

(5)不同节点的同等层按照协议实现对等层之间的通信。

3分层编辑

第7层应用层:OSI中的最高层。为特定类型的网络应用提供了访问OSI环境的手段。应用层确定进程之间通信的性质,以满足用户的需要。应用层不仅要提供应用进程所需要的信息交换和远程操作,而且还要作为应用进程的用户代理,来完成一些为进行信息交换所必需的功能。它包括:文件传送访问和管理FTAM虚拟终端VT、事务处理TP、远程数据库访问RDA、制造报文规范MMS、目录服务DS等协议;应用层能与应用程序界面沟通,以达到展示给用户的目的。 在此常见的协议有:HTTPHTTPSFTPTELNET,SSH,SMTPPOP3等。

第6层表示层:主要用于处理两个通信系统中交换信息的表示方式。为上层用户解决用户信息的语法问题。它包括数据格式交换、数据加密与解密数据压缩终端类型的转换。

第5层会话层:在两个节点之间建立端连接。为端系统的应用程序之间提供了对话控制机制。此服务包括建立连接是以全双工还是以半双工的方式进行设置,尽管可以在层4中处理双工方式 ;会话层管理登入和注销过程。它具体管理两个用户和进程之间的对话。如果在某一时刻只允许一个用户执行一项特定的操作,会话层协议就会管理这些操作,如阻止两个用户同时更新数据库中的同一组数据。

第4层传输层:—常规数据递送-面向连接或无连接。为会话层用户提供一个端到端的可靠、透明和优化的数据传输服务机制。包括全双工或半双工、流控制和错误恢复服务;传输层把消息分成若干个分组,并在接收端对它们进行重组。不同的分组可以通过不同的连接传送到主机。这样既能获得较高的带宽,又不影响会话层。在建立连接时传输层可以请求服务质量,该服务质量指定可接受的误码率、延迟量、安全性等参数,还可以实现基于端到端流量控制功能。

第3层网络层:本层通过寻址来建立两个节点之间的连接,为源端的运输层送来的分组,选择合适的路由和交换节点,正确无误地按照地址传送给目的端的运输层。它包括通过互连网络来路由和中继数据 ;除了选择路由之外,网络层还负责建立和维护连接,控制网络上的拥塞以及在必要的时候生成计费信息。

第2层数据链路层:在此层将数据分帧,并处理流控制。屏蔽物理层,为网络层提供一个数据链路的连接,在一条有可能出差错的物理连接上,进行几乎无差错的数据传输(差错控制)。本层指定拓扑结构并提供硬件寻址;

第1层物理层:处于OSI参考模型的最底层。物理层的主要功能是利用物理传输介质为数据链路层提供物理连接,以便透明的传送比特流。

数据发送时,从第七层传到第一层,接收数据则相反。

上三层总称应用层,用来控制软件方面。下四层总称数据流层,用来管理硬件。除了物理层之外其他层都是用软件实现的。

数据在发至数据流层的时候将被拆分。

在传输层的数据叫段,网络层叫包,数据链路层叫帧,物理层叫比特流,这样的叫法叫PDU(协议数据单元[2] 

4各层功能编辑

(1)物理层(Physical Layer)

物理层是OSI参考模型的最低层,它利用传输介质为数据链路层提供物理连接。它主要关心的是通过物理链路从一个节点向另一个节点传送比特流,物理链路可能是铜线、卫星、微波或其他的通讯媒介。它关心的问题有:多少伏电压代表1?多少伏电压代表0?时钟速率是多少?采用全双工还是半双工传输?总的来说物理层关心的是链路的机械、电气、功能和规程特性。

(2)数据链路层(Data Link Layer)

数据链路层是为网络层提供服务的,解决两个相邻结点之间的通信问题,传送的协议数据单元称为数据帧

数据帧中包含物理地址(又称MAC地址)、控制码、数据及校验码等信息。该层的主要作用是通过校验、确认和反馈重发等手段,将不可靠的物理链路转换成对网络层来说无差错的数据链路

此外,数据链路层还要协调收发双方的数据传输速率,即进行流量控制,以防止接收方因来不及处理发送方来的高速数据而导致缓冲器溢出及线路阻塞。

(3)网络层(Network Layer)

网络层是为传输层提供服务的,传送的协议数据单元称为数据包或分组。该层的主要作用是解决如何使数据包通过各结点传送的问题,即通过路径选择算法(路由)将数据包送到目的地。另外,为避免通信子网中出现过多的数据包而造成网络阻塞,需要对流入的数据包数量进行控制(拥塞控制)。当数据包要跨越多个通信子网才能到达目的地时,还要解决网际互连的问题。

(4)传输层(Transport Layer)

传输层的作用是为上层协议提供端到端的可靠和透明的数据传输服务,包括处理差错控制和流量控制等问题。该层向高层屏蔽了下层数据通信的细节,使高层用户看到的只是在两个传输实体间的一条主机到主机的、可由用户控制和设定的、可靠的数据通路

传输层传送的协议数据单元称为段或报文。

(5)会话层(Session Layer)

会话层主要功能是管理和协调不同主机上各种进程之间的通信(对话),即负责建立、管理和终止应用程序之间的会话。会话层得名的原因是它很类似于两个实体间的会话概念。例如,一个交互的用户会话以登录到计算机开始,以注销结束。

(6)表示层(Presentation Layer)

表示层处理流经结点的数据编码的表示方式问题,以保证一个系统应用层发出的信息可被另一系统的应用层读出。如果必要,该层可提供一种标准表示形式,用于将计算机内部的多种数据表示格式转换成网络通信中采用的标准表示形式。数据压缩和加密也是表示层可提供的转换功能之一。

(7)应用层(Application Layer)

应用层是OSI参考模型的最高层,是用户与网络的接口。该层通过应用程序来完成网络用户的应用需求,如文件传输、收发电子邮件等。

5比喻编辑

7 应用层:老板

6 表示层:相当于公司中演示稿老板、替老板写信的助理

5 会话层:相当于公司中收寄信、写信封与拆信封的秘书

4 传输层:相当于公司中跑邮局的送信职员

3 网络层:相当于邮局中的排序工人

2 数据链路层:相当于邮局中的装拆箱工人

1 物理层:相当于邮局中的搬运工人[1] 

6模型用途编辑

OSI模型用途相当广泛。

比如交换机集线器路由器等很多网络设备的设计都是参照OSI模型设计的。

7若干概念编辑

上面我们简单的说明了7层体系的OSI参考模型,为了方便起见,我们常常把上面的7个层次分为低层与高层。低层为1~3层,是面向通信的,高层为4~7层,是面向信息处理的。

开放系统互连是使世界范围内的应用进程能开放式(而不是封闭式)的进行信息交换。开放系统互连基本参考模型的正式文件是ISO 7498国际标准,又记为OSI/RM,笼统的称为OSI,我国的相应标准是GB 9387。

为了更好的理解OSI参考模型以及日后更深入的学习OSI的各个层次,我们将先对一些容易混淆的概念进行阐述, 然后对ISO 7498中最重要的基本概念进行阐述。

首先,在上面我们已经说起过体系结构的问题,并且已经知道体系结构是抽象的,而实现是具体的。在一般情况下,"系统"是指实际运作的一组物体或物件,而在"OSI系统"这种说法中,"系统"具有其特殊含义(即参考模型),为了区别起见,我们用"实系统"表示在现实世界中能够进行信息处理或信息传递的自治整体,它可以是一台或多台计算机以及这些计算机相关的软件、外部设备、终端、操作员、信息传输手段的集合。若这种实系统和在和其他实系统通信时遵守OSI标准,则这个实系统就叫做开放实系统。但是,一个开放实系统的各种功能都不一定和互连有关,而我们以后要讨论的开放系统互连参考模型中的系统,只是在开放实系统中和互连有关的部分,我们把这部分系统称为开放系统。

8ISO 7498概念编辑

在OSI标准的制定过程中,所采用的方法是将整个庞大而复杂的问题划分为若干个较容易处理的范围较小的问题,在OSI中,问题的处理采用了自上而下逐步求精的方法。先从最高一级的抽象开始,这一级的约束很少,然后逐渐更加精细的进行描述,同时加上越来越多的约束,在OSI中,采用了图3-1的三级抽象,这三级抽象分别是:体系结构、服务定义和协议规范,规范也称规格说明。

OSI体系结构也就是OSI参考模型,它是OSI所制定的标准中最高一级的抽象。用比较形式化的语言来讲,体系结构相当于对象或客体的类型,而具体的网络则相当于对象的一个实例。OSI参考模型正是描述了一个开放系统所要用到的对象的类型,它们之间的关系以及这些对象类型与这些关系之间的一些普遍的约束。

比OSI参考模型更低一级的抽象是OSI的服务定义。服务定义较详细的定义了各层所提供的服务。某一层的服务就是该层及其一些各层的一种能力,它通过接口提供给更高的一层,各层所提供的服务与这些服务是怎样实现的无关。此外,各种服务还定义了层与层之间的抽象接口,以及各层为进行层与层之间的交互而用的服务原语。但这并不涉及到这个接口是怎样实现的。

OSI标准中最低层的抽象是OSI协议规范,各层的协议规范精确的定义:应当发送什么样的控制信息,以及应当用什么样的过程来解释这个控制信息。协议的规范具有最严格的约束。

最后需要知道的是,在制定计算机网络标准方面起着很大作用的两大国际组织CCITT和ISO。许多问题都是他们共同商议决定的。从历史上看,CCITT与ISO的TC97工作领域是很不相同的,CCITT原来是从通信的角度考虑一些标准的制定,而TC97则关心信息处理。但随着科学技术的发展,通信与信息处理的界限越来越模糊了,于是通信与信息处理就成为CCITT和TC97所共同关心的领域。CCITT的建议书X.200就是关于开放系统互连参考模型的,它和上面提到的ISO 7498 基本上是相同的。

9影响编辑

OSI是一个定义良好的协议规范集,并有许多可选部分完成类似的任务。
  它定义了开放系统的层次结构、层次之间的相互关系以及各层所包括的可能的任务。是作为一个框架来协调和组织各层所提供的服务。
  OSI参考模型并没有提供一个可以实现的方法,而是描述了一些概念,用来协调进程间通信标准的制定。即OSI参考模型并不是一个标准,而是一个在制定标准时所使用的概念性框架。

 

 

 

 

以下是贴吧的回复地址:http://bbs.csdn.net/topics/168097

最初听到第三层交换这个词时不免已有一些费解,接踵而来的第四层交换、第七层交换等概念更是让人费思量。其实严格说来,交换意味着源与目的地址之间的连接,在第二层以上的任何技术都不能说是交换技术。负载均衡一词在很大程度上已经取代了第四层交换一词,正像应用认知一词在很大程度上取代了第七层交换一样。但是,恐怕第三层交换一词将永远这样称呼下去了。 
当然,说法只是说法,关键是认识到这些技术在提高网络性能上所带来的益处,所以,本文仍沿用"第几层交换"这种叫法。 
第三层交换 
第三层交换技术也称为IP交换技术、高速路由技术等。这是一种利用第三层协议中的信息来加强第二层交换功能的机制。当今绝大部分的企业网都已变成实施TCP/IP协议的Web技术的内联网,用户的数据往往越过本地的网络在网际间传送,因而,路由器常常不堪重负。 
一种办法是安装性能更强的超级路由器,然而,这样做开销太大,如果是建交换网,这种投资显然是不合理的。第三层交换的目标是,只要在源地址和目的地址之间有一条更为直接的第二层通路,就没有必要经过路由器转发数据包。第三层交换使用第三层路由协议确定传送路径,此路径可以只用一次,也可以存储起来,供以后使用。之后数据包通过一条虚电路绕过路由器快速发送。 
目前主要的第三层交换技术有: 
·Ipsilon IP交换:IP交换技术由Ipsilon公司首倡,即识别数据包流,尽量在第二层进行交换,以绕过路由器,改善网络性能。Ipsilon改进了ATM交换机,删去了控制器中的软件,加上一个IP交换控制器,与ATM交换机通信。该技术适用于机构内部的局域网和校园网。 
·Cisco标签交换:给数据包贴上标签,此标签在交换节点读出,判断包传送路径。该技术适用于大型网络和Internet。 
·3Com Fast IP:侧重数据策略管理、优先原则和服务质量。Fast IP协议保证实时音频或视频数据流能得到所需的带宽。Fast IP支持其它协议(如IPX),可以运行在除ATM外的其它交换环境中。客户机需要有设置优先等级的软件。 
·IBM ARIS(Aggregate Route-based IP Switching):与Cisco的标签交换技术相似,包上附上标记,借以穿越交换网。ARIS一般用于ATM网,也可扩展到其它交换技术。边界设备是进入ATM交换环境的入口,含有第三层路由映射到第二层虚电路的路由表。允许ATM网同一端两台以上的计算机通过一条虚电路发送数据,从而减少网络流量。 
·MPOA(MultiProtocol Over ATM):ATM论坛提出的一种规范。经源客户机请求,路由服务器执行路由计算后给出最佳传输路径。然后,建立一条交换虚电路,即可越过子网边界,不用再做路由选择。 
目前Cisco、3Com、北电网络、朗讯、Cabletron、Foundry和Extreme等公司都有比较成熟的第三层交换产品和模块推出。下面以3Com公司的技术为例,来说明第三层交换技术的演变。 
第一代交换机是分立的电子元件和原语式的软件框架的混合体。软件的功能运行在一个有固定内存的处理机上,随着管理支持和协议功能的改善,软件的功能也不断增加。当用户的日常业务更加依赖于网络,网络上的流量增多时,网络设备便成了瓶颈。 
虽然处理机和存储器变得越来越快和有效,但仍然赶不上流量增加的水平。解决问题的第一步是简化网络层:用交换机取代路由器,以减低处理数据包的开销并显著地提高事务处理速度。3Com引进了专用于优化第二层处理的专用集成电路(ASIC),使性能提高了10倍,并降低了系统的整体费用。 
灵活智能的路由引擎(FIRE)宣告了第三代交换技术的来临。这一代并不仅是建立在第二代的进展上,而且为第三层路由、组播(Multicast)及用户可选的策略(Policy)等方面提供了线速性能,第二层与第三层的性能不再是不一致的了。 
FIRE是3Com公司的第三代第三层交换机的核心部分,它是一个创新的集成化的网间互联体系结构,提供了广泛的第二层和第三层的功能,同时还可在多种网络接口类型上提供线速性能。 
第四层交换 
端到端性能和服务质量要求对所有联网设备的负载进行细致的均衡,以保证客户机与服务器之间数据平滑地流动。 第二层与第三层交换产品在解决局域网和互联网络的带宽及容量问题上发挥了很好的作用,但是,这可能还不够,还需要更多的性能,而这正是第四层交换的用武之地。 
第四层交换技术利用第三层和第四层包头中的信息来识别应用数据流会话,这些信息包括TCP/User 数据报协议(UDP)端口号、标记应用会话开始与结束的"SYN/FIN"位以及IP源/目的地址。利用这些信息,第四层交换机可以做出向何处转发会话传输流的智能决定。 
对于使用多种不同系统来支持一种应用的大型企业数据中心、Internet服务提供商或内容提供商来说,第四层交换的作用是尤其重要的。同样,当在很多服务器上进行复制功能时,第四层交换也会起到不小的作用。 
路由器和第三层交换机在转发不同数据包时并不了解哪个包在前哪个包在后。第四层交换技术从头至尾跟踪和维持各个会话。因此,第四层交换机是真正的"会话交换机"。 
路由器根据链路或网络节点的可用性和性能做出转发决定,而第四层交换机则根据会话和应用层信息做出转发决定。由于做到了这点,因而用户的请求可以根据不同的规则被转发到"最佳"的服务器上。因此,第四层交换技术是用于传输数据和实现多台服务器间负载均衡的理想机制。 
具有第四层功能的交换机能够起到与服务器相连接的"虚拟IP"(VIP)前端的作用。每台服务器和支持单一或通用应用的服务器组都配置一个VIP地址。这个VIP地址被发送出去并在域名系统上注册。 
在发出一个服务请求时,第四层交换机通过判定TCP开始,来识别一次会话的开始。然后它利用复杂的算法来确定处理这个请求的最佳服务器。一旦做出这种决定,交换机就将会话与一个具体的IP地址联系在一起,并用该服务器真正的IP地址来代替服务器上的VIP地址。 
每台第四层交换机都保存一个与被选择的服务器相配的源IP地址以及源TCP 端口相关联的连接表。然后第四层交换机向这台服务器转发连接请求。所有后续包在客户机与服务器之间重新影射和转发,直到交换机发现会话为止。 
在使用第四层交换的情况下,接入可以与真正的服务器连接在一起来满足用户制定的规则,诸如使每台服务器上有相等数量的接入或根据不同服务器的容量来分配传输流。 
目前一般的单功能负载均衡产品可以每秒连接400到800个接入。而同时具有第二层和第四层功能的新一代产品(使用定制的专用集成电路的基于硬件的负载均衡功能)的连接速度则超过了每秒10万次接入。 
在所有这一切中的关键问题是如何确定传输流转发给哪台最可用的服务器,目前,在做出负载均衡决定时采用了多种方法。根据所需负载均衡的颗粒度,第四层交换机可以利用多种方法将应用会话分配到服务器上。这些方法包括求权数最小接入的简单加权循环、测量往返时延和服务器自身的闭合环路反馈等等。 
闭合环路反馈是最先进的方法,它利用可用内存、I/O中断和CPU利用率等特定的系统信息,这些信息可以为适配器驱动器和第四层交换机自动获取。目前的闭合环路反馈机制要求在每台服务器上安装软件代理。 
第四层交换机在形式和功能上与专用负载均衡器完全不同。传统基于硬件的负载均衡器是速度为45Mbps的优化的两端口设备。 
而第四层交换机是设计用于高速Intranet应用的,它支持100Mbps或千兆位接口。 
第四层交换除了负载均衡功能外还支持其它功能,如基于应用类型和用户ID的传输流控制功能。采用多级排队技术,第四层交换机可以根据应用来标记传输流以及为传输流分配优先级。此外,第四层交换机直接安放在服务器前端,它了解应用会话内容和用户权限,因而使它成为了防止非授权访问服务器的理想平台。 
第四层交换产品 
用户过去曾一拥而上采用第二层和第三层交换机,因为这类交换机提高了总体网络吞吐量,使它远远超过了老技术的吞吐量,不知道第四层交换机是否也会看到这种现象。 
Berkeley Networks公司的exponeNT e4和Alteon Networks公司的ACEswith 180两款第四层交换产品具有突出的性能和灵活性,能够比第二层和第三层交换机做出更智能的转发决定。由于把包头查询的代码嵌入到交换机中的专用集成电路(ASIC)中去实现上述功能,几乎不会造成任何延时。这两家厂商的交换机都能实现10M、100M和千兆以太网功能,但是Berkeley的交换机是设计用于企业应用的,而Alteon交换机则是用于拥有大量Web或FTP服务器的机构的。 
Alteon的第四层交换技术能通过对服务器的性能和运行状况的实时监测,根据不同服务器的健康状况,将来访的数据流量以经济高效的方式分配到合适的服务器上。同时,Alteon的第四层交换技术具有Web高速缓存重定向功能,能把指定发往远程Internet主机的HTTP通信拦截,并将这些通信重新定向到本地的高速缓存服务器上,从而大大加快了访问Internet的速度,并节省了大量宝贵的广域网带宽。而且这对于用户和信息提供者来说是完全透明的,不需要用户和信息提供者做任何的设置。 
Cabletron 公司的SmartSwitch Router和Torrent Networking Technologies公司推出的IP9000 Gigabit Router 也是具有第四层交换功能的产品。其中SmartSwitch Router可以实现骨干网从常规第三层交换向全面的第三、第四层交换功能的升级转换,其独特的广域网集成能力以及基于第四层交换的访问控制能力对于网络数据传输安全、有序地进行发挥了关键作用。此外,Cabletron SmartSwitch Router基于第四层交换的QoS功能为特定业务应用数据交换提供了不同级别的优先处理能力。 
第四层交换方案 
在本方案中,通过采用Alteon的第四层交换机来实现Web Server的负载均衡。 
HTTP是Internet中最重要的一种应用,目前Internet上广泛使用的Web Server,采用的是多进程技术,占用系统资源多,效率较低,一般一台Web Server只能承受几百个并发用户。采用第四层交换机可以很好地解决Web Server的扩展性问题,提高Web Server系统的可靠性,并在Web Server之间合理分配负载。 
Alteon的第四层交换机监测Web Server的可用性,包括物理连接、Web Server主机、HTTP Server本身的健康状况,当发现某台Web Server不能提供Web 服务时,交换机自动把Web 请求分配到好的两台Web Server。Alteon第四层交换机还可以通过设置每台Web Server能承受的最大会话数、设置溢出Web Server、备份Web Server等方法来进一步保证Web系统的可靠性。 
Web Server在同一局域网内实现负载均衡时采用多种负载均衡算法,包括Least Connection、Round Robin、MinMiss和Hash算法,以及对算法的加权等等。 
当Web Server不在同一局域网内时,利用Alteon交换机的Global Load Balance技术来实现负载分担的合理性问题。 
第七层交换 
目前,特别是在高可用性和负载均衡方面,有许多先进的工具可以利用由应用返回给最终用户的第七层信息。这类工具使用户可以容易地确认站点内容的响应性和正确性,或从客户的角度来试测你的站点,看看是否存在正确的应用和内容。 
用户不仅能验证是否在发送正确的内容,而且还能打开网络上传送的数据包(不用考虑IP地址或端口),并根据包中的信息做出负载均衡决定。 
从本质上讲,这种智能性迁移超越了第四层的功能。以端口80为例,除了一般类型的Web传输流之外,还有许多类型的传输流流过此端口。最多具有第四层功能的设备无法识别流过此端口的不同类型的传输流,因此它们对所有传输流同等对待。 
可是传输流并不都是相同的。对于负载均衡产品来说,能够知道流过此端口的数据是流媒体还是对商品目录中一件商品的简单请求非常有用,也许商家想赋予需要此目录项的客户更高的优先级。不少具有第四层功能的设备以同样的方式对待这两种类型的数据,因而可能将流媒体数据发送到无法做出响应的服务器,导致错误的信息和时延。 
而第七层的智能性能够进行进一步地控制,即对所有传输流和内容的控制。由于可以自由地完全打开传输流的应用/表示层,仔细分析其中的内容,因此可以根据应用的类型而非仅仅根据IP和端口号做出更智能的负载均衡决定。 
这就可以不仅仅基于URL做出全面的负载均衡决策,而且还能根据实际的应用类型做出决策,无论这些应用正使用什么端口号。这将使用户可以识别视频会议流,并根据这一信息做出相应的负载均衡决策,尽管该应用可能正在使用动态分配地
址。 
这类具有第七层认知的产品的部分功能是保证不同类型的传输流可以被赋予不同的优先级。具有第七层认知的设备不是依赖路由设备或应用来识别差别服务(Diff-Serv)、通用开放策略服务或其它服务质量协议的传输流,它可以对传输流进行过滤并分配优先级。这就使你不必依赖应用或网络设备来达到这些目的。 
目前这类第七层功能的标准还没有。具有第七层认知的功能是具有很大的互补性的:它与提供像Diff-Serv这类服务的网络可以和谐地共存。它对传输流进行分析,然后判定,如对于IP语音这个传输流就需要设置服务比特位,而其它类型的传输流只需要设置较低优先级类型的服务比特位。" 
当然,最重要的是这类设备所能提供的最终好处。过去,我们总需要在智能性与速度之间进行权衡。在采用第七层认知技术的情况下,可以以线速度做出更智能性的传输流决策。用户将自由地根据得到的信息就各类传输流和其目的地做出决策,从而优化Web访问,为最终用户提供更好的服务。 
综上所述,第七层交换可以实现有效的数据流优化和智能负载均衡。 
工作原理 
  

  


第七层交换产品 
具有应用认知功能的交换机产品具有更多的智能性,可以分析输入包的内容,将请求发送到内容专用服务器或应用专用服务器。利用逻辑群集部署,最终用户可以建立用于内容和应用的服务器,网络管理人员利用这类产品来实施各种数据流优先级和带宽控制。只具有第四层交换功能将是不够的,从根本上讲,真正提供对数据包内容更深层次了解的能力非常关键。 
ArrowPoint曾在1998年4月宣布推出其具有URL认知的内容Web交换机CS-100 和 CS-800。HydraWeb 也在1999年推出了独立负载平衡设备 Hydra2500 的计划,Hydra2500同时具有URL和应用认知的智能性。 
Cisco通过将LocalDirector服务器连接管理软件的已有特性与新特性相集成,把同样类型的智能性加入到其交换软件中,这些特性将会体现在其Catalyst产品线中。Cisco 推出的管理和故障处理工具Content Verification System(内容验证系统)作为LocalDirector的附加件,主要对服务器和应用的可用性进行查询。对于最终用户来说,集成后的产品将是一台具有内容认知功能的交换设备,这意味着需要管理的软硬件更少,在响应对内容和应用的请求时会做出更加自动化的决策。 
3Com公司提交的完全集成的产品与Cisco 推出的产品类似。3Com计划得到基于内容交换技术的授权,将这种技术添加到F5 Networks公司为其生产的CoreBuilder 9000交换机中。1999年11月15日,3Com公司宣布了一项与F5达成的定位于电子商务和Web主机客户的销售协议。 
业界认为,对更智能交换机的最大需求将来自开展电子商务和运行其它Web站点的公司。新型集成交换机的另一个好处是它们可以免除对多个设备执行不同任务的需要。 

 

最后欢迎大家访问我的个人网站:1024s

Snap交换机通常不涉及路由功能,因此在其上进行路由实验可能并不可行。但是,你可以在Snap交换机上进行基于MAC地址的交换实验。 以下是一个基于Python的示例代码,用于模拟一个Snap二层交换机的工作原理,实现基于MAC地址的数据包转发: ``` import time # MAC地址表,用于存储MAC地址和对应的端口 mac_table = {} # 转发表,用于存储MAC地址和对应的端口,用于广播 forward_table = {} # 模拟端口 ports = [1, 2, 3, 4] # 接收数据包 def recv_packet(packet): # 从数据包中提取目标MAC地址和源MAC地址 dst_mac = packet['dst'] src_mac = packet['src'] # 将源MAC地址和对应的端口加入MAC地址表 mac_table[src_mac] = packet['port'] # 如果目标MAC地址在MAC地址表中,就直接转发数据包到对应的端口 if dst_mac in mac_table: dst_port = mac_table[dst_mac] print('Received packet from port %d, forwarding to port %d' % (packet['port'], dst_port)) forward_packet(packet, dst_port) else: # 如果目标MAC地址不在MAC地址表中,就广播数据包到所有端口 print('Received packet from port %d, broadcasting to all ports' % packet['port']) forward_packet(packet, None) # 转发数据包 def forward_packet(packet, dst_port): # 如果目标端口不为空,就只转发到目标端口 if dst_port: time.sleep(0.1) # 模拟延迟 print('Forwarding packet to port %d' % dst_port) else: # 如果目标端口为空,就广播到所有端口 for port in ports: if port != packet['port']: time.sleep(0.1) # 模拟延迟 print('Broadcasting packet to port %d' % port) # 发送数据包 def send_packet(src_mac, dst_mac, port): packet = {'src': src_mac, 'dst': dst_mac, 'port': port} recv_packet(packet) # 添加MAC地址和对应的端口到转发表 def add_forward_entry(mac_address, port): forward_table[mac_address] = port # 清空转发表 def clear_forward_table(): forward_table.clear() # 测试代码 if __name__ == '__main__': # 添加MAC地址和对应的端口到MAC地址表 mac_table['00:11:22:33:44:55'] = 1 mac_table['aa:bb:cc:dd:ee:ff'] = 2 # 发送数据包 send_packet('00:11:22:33:44:55', 'aa:bb:cc:dd:ee:ff', 1) send_packet('aa:bb:cc:dd:ee:ff', '00:11:22:33:44:55', 2) send_packet('00:11:22:33:44:55', 'ff:ff:ff:ff:ff:ff', 1) # 添加MAC地址和对应的端口到转发表 add_forward_entry('00:11:22:33:44:55', 2) # 发送数据包 send_packet('00:11:22:33:44:55', 'aa:bb:cc:dd:ee:ff', 1) send_packet('00:11:22:33:44:55', 'ff:ff:ff:ff:ff:ff', 1) # 清空转发表 clear_forward_table() ``` 在这个示例代码中,我们模拟了一个具有4个端口的Snap交换机。我们在MAC地址表中添加了两个MAC地址,并在转发表中将一个MAC地址和其对应的端口添加到了转发表中。然后,我们发送了几个数据包,观察数据包的转发情况。在发送数据包时,我们指定了源MAC地址、目标MAC地址和发送端口。当数据包接收到后,我们根据目标MAC地址在MAC地址表中查找对应的端口,如果找到就直接转发到该端口;如果未找到就广播到所有端口,直到找到目标MAC地址对应的端口为止。在转发数据包时,我们模拟了一定的延迟,以便更好地观察数据包的转发情况。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值