前序:前面的文章中已经从NSX的基本架构讲到了逻辑交换,讲了什么是逻辑交换机,什莫是组播,什么是单播,讲了很多很多。希望大家能时常去复习,今天给大家讲一讲逻辑路由,也就是我们平时所说的三层通信。
一、路由器
先简单的介绍一下路由器,众所周知,处理路由的设备叫路由器,但是有一点要注意,具有路由功能的不一定都是路由器,现在的防火墙、交换机也具备了一些路由的功能。路由器是连接两个或多个网络的硬件设备,在网络间起网关的作用,是读取每一个数据包中的地址然后决定如何传送的专用智能性的网络设备。它能够理解不同的协议,例如某个局域网使用的以太网协议,因特网使用的TCP/IP协议。这样,路由器可以分析各种不同类型网络传来的数据包的目的地址,把非TCP/IP网络的地址转换成TCP/IP地址,或者反之;再根据选定的路由算法把各数据包按最佳路线传送到指定位置。所以路由器可以把非TCP/ IP网络连接到因特网上。
二、NSX逻辑路由
在讲路由之前,先回顾三层网络的作用是什么。网络层主要有以下几点作用:1)选择路由的路径2)知晓邻居网络节点的地址3)基于三层QoS选择流量的优先级4)将本地消息发给传输层。正常来说,这些功能都应该由路由器来实现,但是现在我们有了NSX平台,NSX的逻辑路由功能取代了物理的路由器,将处于不同逻辑二层的子网中的终端连接起来。负责逻辑路由功能的NSX组件称为NSX逻辑路由器,它分为分布式逻辑路由器和Edge路由器。看到这里,新同学可能已经懵了,怎么回事?什么意思?到底什么是逻辑路由器?不要急慢慢来,接下来一一给你解释。
其实,你可以将逻辑路由器想成是虚拟的路由器,就是通过软件程序来实现真实的路由器的功能,这样说你是不是就能理解了。我再来说一些逻辑路由器的优点,说完优点之后,再具体讲解NSX 逻辑路由器是如何实现的。使用逻辑路由,就可以在虚拟化平台内部实现各种操作,包括路由算法,路径选择,邻居发现等等,这样就无需离开虚拟化环境,回到物理网络平台中进行处理。NSX逻辑路由还能更好的实现多租户环境,比如正在虚拟网络中,不同的VNI就算有相同的IP地址,也可以部署两个不同的分布式路由器实例,一个连接租户A,一个连接租户B,保证网络不会发生冲突。
如图所示为逻辑路由器连接不同的逻辑交换机,并与物理网络交互的典型部署模式。逻辑路由器可以连接相互分离的二层网络中的终端(无论终端属于逻辑网络还是物理网络),也可以将逻辑网络中的终端设备连接到外部物理网络。第一种情形发生在数据中心内部,为东西向流量,而第二种情形则为南北向流量。
这里是引用
上面提到了二层网络,说实在的我也一直不太理解这个“二层网络”,所以在网上找了一篇文章,感觉人家解释的真的好,所以引用过来,该大家看看
传统二层网络
如果什么是二层网络都不理解,又怎么理解什么是大二层网络?
二层网络,其实说的是广播域,但是广播域是一把双刃剑,既能使得以太网简单易用,但是广播的不受控制、以及单播不受控制,这往往不是网络管理者的意志。为了增强对网络流量的控制,引入了VLAN的概念。
VLAN
VLAN其实是分割广播域的一种工具,这种工具由二层交换机使用。交换机将某一个VLAN的流量,隔离在该VLAN的空间里。与相邻的交换机交换流量,需要告知相邻交换机该流量属于哪一个VLAN空间。怎么告诉呢?
以太帧头、IP头没有哪个字段可以干这件事,于是发明一个全新的协议字段,一共四个字节,称之为802.1Q,用802.1Q来容纳VLAN信息。
802.1Q位于以太帧头与IP头的中间,这样相邻的交换机就可以根据802.1Q里的VLAN信息,来继续隔离该VLAN的流量。
看,这一切其实很简单,VLAN就是一个流量隔离工具,在本交换机上要隔离,到相邻交换机上还要继续隔离。
古代为了惩罚小偷,会在小偷的脸上刻上“贼”字,无论小偷在监狱还是出狱,都带着一个明晃晃的标志,这其实和VLAN的概念有异曲同工之妙。
大二层网络
当两个二层网络被互联网天各一方时,一样可以通信,不是吗?只要二层网络里有网关,就可以路由到达对方的二层网络。
问题是,二层网络里的主机还有一点点小小的奢求,那就是希望和对方的通信不经过网关,而是通过ARP广播发现对方的MAC地址,然后直接与对方通信!
那很简单啊,只要用一个网线或光纤将两个网络连接起来,不就可以了吗?
这个主意很不错!
如果一个二层网络在美国夏威夷,一个在上海,拉光纤可没有那么方便了。
咱们不是还有二层专线服务的吗?大不了多花点钱,用钱砸晕那帮孙子!
有钱什么都不是问题,问题是没钱!
没钱怎么办呢?
夏威夷连在互联网上没有?有啊。
上海连在互联网上没有?有啊!
能否借助互联网,将二层的以太帧,隧道传输到大洋彼岸?
当然可以了。
这个技术就是VXLAN,其实就是一种UDP隧道,有什么啦?
用互联网隧道传输二层数据帧,互联网将小二层网络融合成一个大的二层域的行为叫大二层网络。