vxlan vs GRE(三层组播和二层组播如何对应起来)

www.huawei.com/ilink/cnenterprise/download/HW_401028

http://feisky.xyz/sdn/basic/vxlan.html

华为的vxlan文档介绍:

1)主要的内容重点在vxlan的封装形式,多了50字节的tunnel长度;(14帧头+20ip头+8udp头+8vxlan头),其中vxlan头(00000100+24bit保留+24bit vxlanID+8bit保留)

2)正常来说一个64-1518帧长的数据包,去掉vxlan的tunnel头部+FCS(帧校验序列-CRC)之后,只有10-1464长度可以使用,但是vxlan的封装是为了传输内层的来自vm的数据包,所以实际的传输过程需要调大整个网络环境的MTU,才能正常传输;

3) GRE封装的是ip头+数据信息,

?GRE(Generic Routing Encapsulation):通用路由封装协议。定义了在一种网络层协议上封装另一种协议(或同一种协议)。例如:对某些网络层协议(如IP和IPX)的数据报进行封装,使这些被封装的数据报能够在另一个网络层协议(如IP)中传输。

?GRE是VPN(Virtual Private Network)的第三层隧道协议,即在协议层之间采用了一种被称之为Tunnel(隧道)的技术。

?Tunnel是一个虚拟的点对点的连接,在实际中可以看成仅支持点对点连接的虚拟接口,这个接口提供了一条通路使封装的数据报能够在这个通路上传输,并且在一个Tunnel的两端分别对数据报进行封装及解封 。

封装过程:

?经GRE模块处理后,原IP头部已经被封装在新IP头部和GRE头部之后

?新IP数据包的IP头部的协议号为47。

?新IP头部的长度为20字节

?GRE头部的长度为4~20字节(根据实际配置而定)。

格式:

GRE头部结构参照RFC1701定义

  • 前4 字节是必须出现的
  • 第5~20字节将根据第1字节的相关bit位信息,可选出现。
  • GRE头部的长度将影响Tunnel口的mtu值

?0bit  C:校验和标志位。

如配置了checksun则该位置为1,同时校验和(可选)、偏离(可选)部分的共4 bytes出现在GRE头部。

如不配置checksun则该位置为0,同时校验和(可选)、偏离(可选)部分不出现在GRE头部。

?1bit  R:路由标志位。

如R为1,校验和(可选)、偏离(可选)、路由(可选)部分的共8 bytes出现在GRE头部。

如R为0, 校验和(可选)、偏离(可选)、路由(可选)部分不出现在GRE头部。

?2bit  K:密钥标志位。

如配置了KEY则该位置为1,同时密钥(可选)部分的共4 bytes出现在GRE头部。

如不配置KEY则该位置为0,同时密钥(可选)部分不出现在GRE头部。

?3bit  S:序列好同步标志位。

如配置了sequence-datagrams则该位置为1,同时序列号(可选)部分的共4 bytes出    现在GRE头部。

如不配置sequence-datagrams则该位置为0,同时序列号(可选)部分不出现在GRE头部。

?4bit  s:严格源路由标志位。

除非所有的路由都符合严格源路由,该bit位为1。通常该bit为0。

?5~7bit:递归控制:该位置需为0

?8~12bit: 未定义,需为0

?13~15 版本:需为0

16~31 协议类型:常用的协议,例如IP协议为0800

============================

三层组播和二层组播如何对应起来

1)     常用组播地址:

a)    224.0.0.1 网段内所有主机和路由器(等效于广播地址)

b)    224.0.0.2 所有组播路由器的地址

c)    224.0.0.5 OSPF路由器

d)    224.0.0.6 OSPF DR

e)    224.0.0.9 RIP-2路由器

f)     224.0.0.13 所有PIM路由器

2)      三层组播地址如何映射到二层组播地址

a)    IANA规定,组播MAC地址的高24bit为0x01005e,第25bit为0,低23bit为组播IP地址的低23bit。IP组播地址的前4bit是固定的1110,对应组播MAC地址的高25bit。IP组播地址的后28bit中只有23bit被映射到MAC地址,因此丢失了5bit的地址信息,直接结果是有32个IP组播地址映射到同一MAC地址上。

时间: 2024-10-28 11:43:33

vxlan vs GRE(三层组播和二层组播如何对应起来)的相关文章

53、组播配置实验之解决二层组播

1.解决二层组播解析 2.实验拓扑 3.基础配置 IOU1配置 ip multicast-routing interface Ethernet0/0 ip address 192.168.1.1 255.255.255.0 ip pim sparse-mode IOU3配置 interface Ethernet0/0 ip address 192.168.1.3 255.255.255.0 ip igmp join-group 224.1.1.1 IOU4配置 interface Etherne

网络叠加模式VLAN、VxLAN、GRE

什么是叠加网络 1.一个数据包(或帧)封装在另一个数据包内;被封装的包转发到隧道端点后再被拆装. 2.叠加网络就是使用这种所谓"包内之包"的技术安全地将一个网络隐藏在另一个 网络中,然后将网络区段进行迁移. 一.VLAN介绍 VLAN,是英文Virtual Local Area Network的缩写,中文名为"虚拟局域网", VLAN是 一种将局域网(LAN)设备从逻辑上划分(注意,不是从物理上划分)成一个个网段(或者 说是更小的局域网LAN),从而实现虚拟工作组(

组播IP转换为组播MAC地址【转载】

链接:https://www.zhihu.com/question/36730567/answer/83083851来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 组播IP转换为组播MAC地址是一种32:1的映射关系.组播IP地址:IANA将D类地址空间分配给IP组播地址.该空间的地址用二进制表示并且第一个八位组的前4位用1110表示, 因此IP组播地址的范围从224.0.0.0到239.255.255.255 . 组播MAC地址:IEEE MAC地址规定了第一个

C#正则表达式获取组名,按照组名输出匹配内容

最近写了个正则表达式匹配的工具,可以按照组名输出匹配内容,还是挺方便的,代码留存一下,以后用的话,直接copy了. Regex regex = new Regex(this.textBoxRegex.Text); Match result = regex.Match(this.textBoxText.Text); if (result.Success) { StringBuilder sb = new StringBuilder(); foreach (var groupName in rege

Android开发之ViewPager实现轮播图(轮播广告)效果的自定义View

最近开发中需要做一个类似京东首页那样的广告轮播效果,于是采用ViewPager自己自定义了一个轮播图效果的View. 主要原理就是利用定时任务器定时切换ViewPager的页面. 效果图如下: 主页面布局实现如下: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android&

(转)进程间关系:进程、僵尸进程、孤儿进程、进程组、前台进程组、后台进程组、孤儿进程组、会话、控制终端

不同的shell对使用管道线时创建子进程的顺序不同,本文以bash为例,它是支持作业控制的shell的典型代表. 僵尸进程与孤儿进程 僵尸进程:先于父进程终止,但是父进程没有对其进行善后处理(获取终止子进程有关信息,释放它仍占有的资源).消灭僵尸进程的唯一方法是终止其父进程.孤儿进程:该进程的父进程先于自身终止.其特点是PPID=1(init进程的ID).一个孤儿进程可以自成孤儿进程组. 文中用到的缩写 PID = 进程ID (由内核根据延迟重用算法生成)PPID = 父进程ID(只能由内核修改

因为 &#39;PRIMARY&#39; 文件组已满。请删除不需要的文件、删除文件组中的对象、将其他文件添加到文件组或为文件组中的现有文件启用自动增长,以便增加可用磁盘空间

导致你的问题的,应该有2种可能性: 1.存放你的primary文件组的磁盘,已经满了: use master--你的数据库名称 go --看看你的primary组里的文件 select ds.name, df.physical_name, --主文件组的物理文件的路径 --打开我的电脑,查看文件所在盘,是否磁盘已满 df.is_percent_growth, --是否自动增长 df.growth --增长多少 from sys.data_spaces ds inner join sys.data

无法为数据库 XXX 中的对象XXX 分配空间,因为 &#39;PRIMARY&#39; 文件组已满。请删除不需要的文件、删除文件组中的对象、将其他文件添加到文件组或为文件组中的现有文件启用自动增长,以便增加可用磁盘空间。

无法为数据库 XXX 中的对象XXX 分配空间,因为 'PRIMARY' 文件组已满.请删除不需要的文件.删除文件组中的对象.将其他文件添加到文件组或为文件组中的现有文件启用自动增长,以便增加可用磁盘空间. 原因是装了mssql express 2005 版本,该版本最大的限制是4G 百度说明: 1.数据库的大小限制:SQL Server 2005 Express 和SQL Server 2008 Express 数据库的大小限制最大为 4GB,最新版本的SQL Server 2008 R2 E

php 正则表达式捕获组与非捕获组

熟练掌握正则表达式是每个程序员的基础要求,对于每个初学者来说会被正则表达式一连串字符弄得头晕眼花.博主便会如此,一直对正则表达式有种莫名的恐惧.近来看到另一位博友写的 <php正则表达式>一文获益良多,对其通配符以及捕获数据两个章节颇感兴趣.这两个章节正好涉及到的是正则表达式的捕获组与非捕获组的知识,因而本文来细细探讨下这部分知识. 我们知道,在正则表达式下(x) 表示匹配'x'并记录匹配的值.这只是比较通俗的说法,甚至说这是不严谨的说法,只有()捕获组形式才会记录匹配的值.非捕获组则只匹配,