关键词:数据通信 网络架构 VLAN
一、IP网络基础
1、数据通信基础
数据通信讨论的是从一个设备到另一个设备传输信息。协议定义了通信的规则,以便发送者和接收者能够协调他们的活动。在物理层上,信息被转换成可以通过有线媒体(铜线或光缆)或无线媒体(无线电或红外线传输)传输的信号。高层协议则定义了传输信息的封装、流控制和在传输中被丢失或破坏信息的恢复技术。
数据通信有如下特点:
①数据通信实现的是计算机与计算机之间或者人与计算机之间的通信,而电话系统主要完成的是人与人之间的通信。
计算机并不具备人脑的思维能力,而是靠预先编制的程序来完成所有的工作。因此计算机之间的通信过程需要定义严格的通信协议,并且这些协议比电话系统中的标准复杂很多。
②数据通信中对数据传输速率的要求较高。
数据信号的传输速率依照所使用信道的不同而不同。
如果在一条数字电话信道上以64Kbps的速率传输数据,每分钟可传送3840 KB的数据。假设一个字符由 8个比特(bit)构成,则可在每分钟内传输480000个字符。假设每页包含2000个字符,则该信道每分钟能够传送240页文件,相当于一本书的内容。
这样的数据传输速率对于电话通信来讲是根本无法实现的。
数据通系统是由发送方、接收方、介质、协议、报文五部分组成。
数据流的方向:单工、半双工、全双工
③数据通信中对数据传输的可靠性要求较高。
由于数据通常是以二进制形式的“1”和“0°”的序列进行传输。
如果在传输过程中把“1”误传为“0”或者把"0”误传为"1”,就会造成接收端接收到错误的信息。甚至引起严重的后果。
因此,数据通信要求很低的误码率,并且要求传输过程中能够自动检测并纠正差错。
④数据通信中不同场合通信持续时间差异较大。
大量的统计数字分析表明,对于不同应用,数据通信的平均时延和平均信息长度相差很大。
⑤数据通信应该具有较为灵活的接口能力。
数据通信中涉及的计算机和终端形形色色,种类各异。它们之间在通信速率、编码格式同步方式以及通信规程等方面均有可能存在很大的差异。
为了满足不同种类计算机和终端之间的相互通信的需要,数据通信应该具有灵活的接口能力。
2、网络和INTERNET
局域网 :小范围内的私有网络,一个家庭内的网络、一个公司内的网络、一个校园内的网络都属于局域网。
广域网:把不同地域的局域网互相连接起来的网络。运营商搭建广域网实现跨区域的网络互连。
互联网:互联全世界的网络。互联网是一个开放、互联的网络,不属于任何个人和任何机构,接入互联网后可以和互联网的任何一台主机进行通信。
二、路由
静态路由就是手工配置的路由,使得数据包能够按照预定的路径传送到指定的目标网络。当不能通过动态路由协议学到一些目标网络的路由时,配置静态路由就会显得十分重要。
应用场景:
三层交换机或者路由器组网的设备台数有限,总的网络路由数量有限,维护的工作量可控,此时就可以考虑采用静态路由;或者是网络设备不支持一些动态路由协议比如RIP,OSPF时只能采用静态路由。
针对出口设备,比如路由器,防火墙等,针对公网internet的默认路由可以采用静态路由来配置,另外一些网吧,或者高校环境,采用电信,联通,教育网等多家运行商出口链路的时候,针对教育网或者联通的资源采用地址库的方式(也就是静态路由的方式)进行精确匹配,让数据流访问联通的优先走联通出口,访问教育网的资源优先走教育出口,而电信的链路同时作为两者的备份。静态路由这种方法配置简单,并且精确可控,数据包可以完全按照管理员预想的配置的路径进行转发,所以有时候也可以做为临时的一些路由策略来引导数据流按照新的配置来走,以补充动态路由协议的一些不足,或者路由学习非预期(静态路由的优先级通常最高,比动态RIP,OSFP,BGP这些路由优先匹配数据)。
3.1 静态路由的分为:静态路由、默认路由、指向null0的静态路由。
静态路由是什么?
在现网中很多时候使用静态路由觉的简单才使用,或者是小型的网络才使用,因为静态路由简单,没有太复杂的选路原则。
事实上静态路由一些复杂的网络中使用也非常普遍,很多时候内网和外网对接的时候都会使用静态路由进行控制。
静态路由怎么配置?
首先要写网段=网络地址+掩码组成。
然后跟上下一跳的接口或IP地址。
例:
ip route 192.168.1.0 255.255.255.0 F0/0
网段:网络地址192.168.1.0,掩码255.255.255.0
下一跳:F0/0
动态路由协议的分类
4、距离矢量路由协议
和静态路由选择相比,动态路由选择最大的优势是后者能够缓解因网络拓扑变化而带来的影响。大多数的路由选择协议无非二者之一:距离矢量和链路状态。
比较常见的距离矢量型路由协议有RIP、IGRP、EIRGP和RTMP等。
之所以名叫距离矢量,是因为在该种类型的路由选择中,路由是以矢量(距离和方向)的形式被通告出去的,距离即度量(metric),方向即下一跳路由器。当到达同一目的地有多条路径时,路由器需要通过度量来判断最优路径。度量可以将路由按照从最好到最坏、从最先选择到最后选择的顺序进行等级划分。
距离矢量路由的通用属性
1.定期更新
顾名思义,定期更新就是每经过特定的一段时间后就要发送更新信息,不同协议的这个特定时间(即周期)也不同。如果周期较短,网络链路中的数据包可能会造成拥堵;而如果周期较长,当网络拓扑发生改变之后可能会出现更新不及时的情况。
2.邻居
距离矢量路由选择协议中,本路由器和邻居互相发送更新消息。
3.广播更新
当一台路由器首次运行了动态路由协议之后,会将更新信息广播出去,如果协议相同的话,其他路由器就会接受数据包并且采取相应的动作(比如建立邻居什么的);运行不同路由协议的路由器会将该数据包丢弃。
4.全路由表更新
大部分距离矢量型路由协议所发送的更新信息就是整个路由表,在其邻居收到这些更新信息后会更新自己需要的信息并将其他信息丢弃。
AS(自治域系统)内部使用内部网关协议; AS与AS之间使用外部网关协议 静态路由:由网络管理员根据数据访问需求手动在每台设备上进行添加和维护。动态路由:路由器自动进行路由信息的更新和同步,在网络拓扑改变时能够自动进行收敛。距离矢量的定义距离:[ --R1------R2------2.2.2.0/24 ] 如图,对于路由器R1来说发送数据包到达2.2.2.0/24网段,就有1跳(距离)。矢量:也就是方向的意思,也就是路由器应该往哪个方向或者说是使用哪个接口转发数据包。距离矢量的特点
采取的周期性(广播)的方式更新整张路由表
距离矢量的工作原理
管理距离(AD值)
同一台路由器,在运行两种(或以上)动态路由协议(同时运行RIP、OSPF等)的前提下。学习到去往同一目的地的路由,则会比较路由的AD值,取信小的,将路由装入路由表,进行数据转发;另外一条会隐藏起来作为备用,在优选路径Down掉之后会重新启用,加入路由表。(这个过程是自动的)
三、VLAN
1、什么是VLAN?
VLAN(Virtual LAN),翻译成中文是“虚拟局域网”。LAN可以是由少数几台家用计算机构成的网络,也可以是数以百计的计算机构成的企业网络。VLAN所指的LAN特指使用路由器分割的网络——也就是广播域。
简单来说,同一个VLAN中的用户间通信就和在一个局域网内一样,同一个VLAN中的广播只有VLAN中的 成员才能听到,而不会传输到其他的VLAN中去,从而控制不必要的广播风暴的产生。同时, 若没有路由,不同VLAN之间不能相互通信,从而提高了不同工作组之间的信息安全性。网络管理员可以通过配置VLAN之间的路由来全面管理网络内部不同工作组之间的信息互访。
2、未分割VLAN时将会发生什么?
那么,为什么需要分割VLAN(广播域)呢?那是因为,如果仅有一个广播域,有可能会影响到网络整体的传输性能。具体原因,请参看附图加深理解。
图中,是一个由5台二层交换机(交换机1~5)连接了大量客户机构成的网络。假设这时,计算机A需要与计算机B通信。在基于以太网的通信中,必须在数据帧中指定目标MAC地址才能正常通信,因此计算机A必须先广播“ARP请求(ARP Request)信息”,来尝试获取计算机B的MAC地址。
交换机1收到广播帧(ARP请求)后,会将它转发给除接收端口外的其他所有端口,也就是泛滥了。接着,交换机2收到广播帧后也会泛滥。交换机3、4、5也还会泛滥。最终ARP请求会被转发到同一网络中的所有客户机上,这也就是网络风暴。
我们分析下,这个计算A的ARP请求原本是为了获得计算机B的MAC地址而发出的。也就是说:只要计算机B能收到就万事大吉了。可是事实上,数据帧却传遍整个网络,导致所有的计算机都收到了它。如此一来,一方面广播信息消耗了网络整体的带宽,另一方面,收到广播信息的计算机还要消耗一部分CPU时间来对它进行处理。造成了网络带宽和CPU运算能力的大量无谓消耗,可能会造成网络瘫痪。
3、VLAN作用限制广播域:广播域被限制在一个VLAN内,节省了带宽,提高了网络处理能力。增强局域网的安全性:不同VLAN内的报文在传输时是相互隔离的,即一个VLAN内的用户不能和其它VLAN内的用户直接通信。提高了网络的健壮性:故障被限制在一个VLAN内,本VLAN内的故障不会影响其他VLAN的正常工作。灵活构建虚拟工作组:用VLAN可以划分不同的用户到不同的工作组,同一工作组的用户也不必局限于某一固定的物理范围,网络构建和维护更方便灵活。二、VLAN的基本概念
VLAN标签
要使设备能够分辨不同VLAN的报文,需要在报文中添加标识VLAN信息的字段。IEEE 802.1Q协议规定,在以太网数据帧的目的MAC地址和源MAC地址字段之后、协议类型字段之前加入4个字节的VLAN标签(又称VLAN Tag,简称Tag),用以标识VLAN信息。
VLAN帧格式
设备利用VLAN标签中的VID来识别数据帧所属的VLAN,广播帧只在同一VLAN内转发,这就将广播域限制在一个VLAN内。
常用设备收发数据帧的VLAN标签情况:在一个VLAN交换网络中,以太网帧主要有以下两种格式: 有标记帧(Tagged帧):加入了4字节VLAN标签的帧。无标记帧(Untagged帧):原始的、未加入4字节VLAN标签的帧。常用设备中: 用户主机、服务器、Hub只能收发Untagged帧。交换机、路由器和AC既能收发Tagged帧,也能收发Untagged帧。语音终端、AP等设备可以同时收发一个Tagged帧和一个Untagged帧。为了提高处理效率,设备内部处理的数据帧一律都是Tagged帧。
链路类型和接口类型
设备内部处理的数据帧一律都带有VLAN标签,而现网中的设备有些只会收发Untagged帧,要与这些设备交互,就需要接口能够识别Untagged帧并在收发时给帧添加、剥除VLAN标签。同时,现网中属于同一个VLAN的用户可能会被连接在不同的设备上,且跨越设备的VLAN可能不止一个,如果需要用户间的互通,就需要设备间的接口能够同时识别和发送多个VLAN的数据帧。
为了适应不同的连接和组网,设备定义了Access接口、Trunk接口和Hybrid接口3种接口类型,以及接入链路(Access Link)和干道链路(Trunk Link)两种链路类型。
链路类型
根据链路中需要承载的VLAN数目的不同,以太网链路分为: 接入链路接入链路只可以承载1个VLAN的数据帧,用于连接设备和用户终端(如用户主机、服务器等)。通常情况下,用户终端并不需要知道自己属于哪个VLAN,也不能识别带有Tag的帧,所以在接入链路上传输的帧都是Untagged帧。干道链路干道链路可以承载多个不同VLAN的数据帧,用于设备间互连。为了保证其它网络设备能够正确识别数据帧中的VLAN信息,在干道链路上传输的数据帧必须都打上Tag。接口类型
根据接口连接对象以及对收发数据帧处理的不同,以太网接口分为: Access接口Access接口一般用于和不能识别Tag的用户终端(如用户主机、服务器等)相连,或者不需要区分不同VLAN成员时使用。它只能收发Untagged帧,且只能为Untagged帧添加唯一VLAN的Tag。Trunk接口Trunk接口一般用于连接交换机、路由器、AP以及可同时收发Tagged帧和Untagged帧的语音终端。它可以允许多个VLAN的帧带Tag通过,但只允许一个VLAN的帧从该类接口上发出时不带Tag(即剥除Tag)。Hybrid接口Hybrid接口既可以用于连接不能识别Tag的用户终端(如用户主机、服务器等)和网络设备(如Hub),也可以用于连接交换机、路由器以及可同时收发Tagged帧和Untagged帧的语音终端、AP。它可以允许多个VLAN的帧带Tag通过,且允许从该类接口发出的帧根据需要配置某些VLAN的帧带Tag(即不剥除Tag)、某些VLAN的帧不带Tag(即剥除Tag)。
当接收到不带VLAN标签的数据帧时,Access接口、Trunk接口、Hybrid接口都会给数据帧打上VLAN标签,但Trunk接口、Hybrid接口会根据数据帧的VID是否为其允许通过的VLAN来判断是否接收,而Access接口则无条件接收。当接收到带VLAN标签的数据帧时,Access接口、Trunk接口、Hybrid接口都会根据数据帧的VID是否为其允许通过的VLAN(Access接口允许通过的VLAN就是缺省VLAN)来判断是否接收。当发送数据帧时:Access接口直接剥离数据帧中的VLAN标签。Trunk接口只有在数据帧中的VID与接口的PVID相等时才会剥离数据帧中的VLAN标签。Hybrid接口会根据接口上的配置判断是否剥离数据帧中的VLAN标签。因此,Access接口发出的数据帧肯定不带Tag,Trunk接口发出的数据帧只有一个VLAN的数据帧不带Tag,其他都带VLAN标签,Hybrid接口发出的数据帧可根据需要设置某些VLAN的数据帧带Tag,某些VLAN的数据帧不带Tag。
VLAN的访问
1、ARP表
提起ARP表必然先想起ARP(address resolution protocol)协议,地址解析协议。
在实际应用中,我们经常遇到这样的问题:已知一个机器的IP地址,但在实际网络的链路上传送数据帧时,最终还是必须使用该网络的硬件地址,需要知道其MAC地址。如果两个都需要去记忆或输入,大大增加了其繁琐程度。地址解析协议ARP就是用来解决这样的问题的。
由于IP协议使用了ARP协议,因此通常把ARP协议划归到网络层。但ARP协议的用途是为了从网络层使用IP地址,解析出在链路层使用的硬件地址。
每一台主机都设有一个ARP高速缓存,里面有本局域网上的各种主机和路由器的IP地址到硬件地址的映射表,表里面的内容由ARP协议进行动态更新。表内的数据会老化,达到老化时间会自动删除,在此通信时,由ARP协议重新添加。
2、MAC表
说到MAC表,就不得不说一下交换机的工作原理,因为交换机是根据MAC地址转发数据帧的。
当PC0发送ARP数据包,交换机会把数据包发往PC0之外的所有主机,并在相应包中记录下相应Mac地址与接口数据。
当PC0向PC1发送一帧数据,从1口进到交换机。交换机收到帧后,根据帧中的目的MAC先查本地MAC表,没有查到应从哪个接口转发这个帧。
接着,交换机把这个帧的源MAC和接口1写入交换表中,并向除1以外的所有接口广播这个帧,PC2将此广播帧丢弃,因为目的地址不对。PC1收下这个目的地址是自己MAC的数据,并回应数据包,此时交换机会把PC1的MAC和对应接口2写入表中。然后当PC0与PC1再次发送数据交换机可以根据目的MAC查表找出对应的接口,将数据包直接送达对应的主机。
考虑到有可能在交换机的接口更换主机,或者主机要跟换主机更换网卡,这时交换机中MAC表也是动态的、有自己的老化时间,会自动删除相关数据。
VLAN的原理
1、实现VLAN的机制
在理解了“为什么需要VLAN”之后,接下来让我们来了解一下交换机是如何使用VLAN分割广播域的。
首先,在一台未设置任何VLAN的二层交换机上,任何广播帧都会被转发给除接收端口外的所有其他端口上泛滥。例如,计算机A发送广播信息后,会被转发给端口2、3、4。
时,如果在交换机上生成红、蓝两个VLAN;同时设置端口1、2属于红色VLAN、端口3、4属于蓝色VLAN。再从A发出广播帧的话,交换机就只会把它转发给同属于一个VLAN的其他端口——也就是同属于红色VLAN的端口2,不会再转发给属于蓝色VLAN的端口。同样,C发送广播信息时,只会被转发给其他属于蓝色VLAN的端口,不会被转发给属于红色VLAN的端口。
就这样,VLAN通过限制广播帧转发的范围分割了广播域。上图中为了便于说明,以红、蓝两色识别不同的VLAN,在实际使用中则是用“VLAN的ID”来区分的。
但是,VLAN生成的逻辑上的交换机是互不相通的。因此,在交换机上设置VLAN后,如果未做其他处理,VLAN间是无法通信的。
2、需要VLAN间通信时怎么办?
那么,当我们需要在不同的VLAN间通信时又该如何是好呢?
VLAN是广播域。而通常两个广播域之间由路由器连接,广播域之间来往的数据包都是由路由器中继的。因此,VLAN间的通信也需要路由器提供中继服务,这被称作“VLAN间路由”。
VLAN间路由,可以使用普通的路由器,也可以使用三层交换机。大家可以记住不同VLAN间互相通信时需要用到路由功能。
VLAN的划分方式
1、静态VALN
静态VLAN也叫做基于端口的VLAN。从意思也能理解,它是固定不变的,就是明确指定交换机各端口属于哪个VLAN的设定方法。
基于端口的vlan这种方法,主要的优点就是定议vlan的成员很简单明了,思路清楚,直接针对交换机现有的端口设置vlan,哪些端口属于同一个vlan,很清楚的理解。
那么它的缺点呢?
由于需要一个个端口地指定,因此当网络中的计算机数目超过一定数字(比如数百台)后,设定操作就会变得烦杂无比。并且,计算机每次变更所连端口,都必须同时更改该端口所属VLAN的设定——这显然静态VLAN不适合那些需要频繁改变拓补结构的网络和大型网络
2、动态VLAN
动态VLAN则是根据每个端口所连的计算机,随时改变端口所属的VLAN。这就可以避免上述的更改设定之类的操作。动态VLAN可以大致分为3类:
● 基于MAC地址的VLAN(MAC Based VLAN)
● 基于子网的VLAN(Subnet Based VLAN)
● 基于用户的VLAN(User Based VLAN)
|