MPLS格式和802.1q帧格式

news2024/12/23 18:01:28

一.MPLS

IETF开发的多协议标记交换(MPLS)把第2层的链路状态信息(带宽、延迟、利用率等)集成到第3层的协议数据单元中,从而简化和改进了第3层分组的交换过程 。理论上,MPLS支持任何第2层和第3层协议。MPLS包头的位置界于第2层和第3层之间,可称为第2.5层,标准格式如下图所示。

MPLS可以承载的报文通常是IP包,当然也可以直接承载以太帧、AAL5包甚至ATM信元等。可以承载MPLS的第2层协议可以是PPP、以太顿、ATM和帧中继等,如下图所示。

当分组进入MPLS网络时,标记边缘路由器(LER)就为其加上一个标记,这种标记不仅包含了路由表项中的信息(目标地址、带宽和延迟等),而且还引用了IP头中的源地址字段、传输层端口号和服务质量等。这种分类一旦建立,分组就被指定到对应的标记交换通路(LSP)中,标记交换路由器(LSR)将根据标记来处置分组,不再经过第3层转发,从而加快了网络的传输速度。

MPLS可以把多个通信流汇聚成为一个转发等价类(FEC)。LER根据目标地址和端口号把分组指派到一个等价类中,在LSR中只需根据等价类标记査找标记信息库(LIB), 确定下一跳的转发地址。这样使得协议更具伸缩性。MPLS标记具有局部性,一个标记只是在一定的传输域中有效。

二.VLAN

虚拟局域网(Virtual Local Area Network, VLAN)是根据管理功能、组织机构或应用类型对交换局域网进行分段而形成的逻辑网络。虚拟局域网与物理局域网具有同样的属性,然而其中的工作站可以不属于同一物理网段。每一个VLAN是一个逻辑网络,发往VLAN之外的分组必须通过路由器进行转发。任何交换端口都可以分配给某个VLAN,属于同一个VLAN的所有端口构成一个广播域,各个VLAN属于不同的广播域。

新交换机出厂时被预配置了VLAN1,交换机本身的通信(VTP报文、CDT组播、以及交换机发出其他报文)都发生在VLAN 1中。VLAN 1被称为管理VLAN,当然也可以用其他的VLAN作为管理VLAN。为了安全起见,网络中所有交换机的默认配置都必须改变,这样,不同VLAN之间的访问都要经第三层设备转发,通过访问控制列表可以过滤不必要的通信。

在划分成VLAN的交换局域网中,交换机端口之间的连接分为两种:接入链路和中继链路。

接入链路只能连接具有标准以太网卡的设备,只能传送属于单个VLAN的数据包。

中继链路则能够传送多个VLAN的数据包。

为了支持中继连接,应该修改原来的以太网数据包,在其中加入VLAN标记,以区分属于不同VLAN的广播域。

VLAN帧标记有两种格式。一种是IEEE制定的802.1q协议,在原来的以太帧中增加了4个字节的标记(Tag)字段,如图3所示,其中标记控制信息(Tag Control Information, TCI)包含Priority、CFI和VID三部分。

另一个是Cisco公司的交换机间链路协议(Inter-Switch Link, ISL),适用于Cisco的Catalyst系列交换机。ISL协议在每个帧的头部增加26字节的帧标记,在帧尾附加4字节的CRC校验码。

补充(HDLC,帧中继也有FCS校验位)

HDLC

数据链路控制协议分为面向字符的协议和面向比特的协议。面向字符的协议以字符作为传输的基本单位,并用10个专用字符控制传输过程。面向比特的协议以比特作为传 输的基本单位,它的传输效率高,广泛地应用于公用数据网中。

HDLC (High Level Data Link Control,高级数据链路控制)协议是ISO根据IBM公 司的SDLC (Synchronous Data Link Control)协议扩充开发而成的。美国国家标准化协会(ANSI)则根据SDLC开发出类似的协议,叫做ADCCP协议(Advanced Data Communication Control Procedure)。

 HDLC使用统一的帧结构进行同步传输,下图为HDLC帧的格式示意图。HDLC帧由6个字段组成,以两端的标志字段(F)作为帧的边界,在信息字段(INFO)前面的三个字段(F、A和C)叫做帧头,信息字段后面的两个字段(FCS和F)叫做帧尾,信息字段中包含了要传输的数据。

HDLC用一种特殊的比特模式01111110作为标志以确定帧的边界。同一个标志既可以作为前一帧的结束,也可以作为后一帧的开始。链路上所有的站都在不断地探索标志模式,一旦得到一个标志就开始接收帧。在接收帧的过程中如果发现一个标志,则认为该帧结束了。

如果帧中间出现比特模式01111110时,也会被当作标志,从而破坏了帧的同步。

为了避免这种错误,要使用位填充技术,即发送站的数据比特序列中一旦发现0后有5个1,则在第7位插入一个0。这样就保证了传输的数据比特序列中不会出现与帧标志相同的比特模式。接收站则进行相反的操作:在接收的比特序列中如果发现0后有5个1,则检查第7位,若第7位为0则删除之;若第7位是1且第8位是0,则认为是检测到帧尾的标志域;若第7位和第8位都是1,则认为是发送站的停止信号。

帧中继

帧中继(FrameRelay,FR)是作为综合业务数字网(ISDN)的一种承载业务而开发的。按照ISDN的体系结构,帧中继在第二层建立虚电路,用帧方式承载数据业务,因而第三层被省略了。在用户平面,通过LAP-F(Q.922)帧传送用户数据。LAP-F类似于LAP-B,但是省去了控制字段,其帧格式如下图所示。

从图1可以看出,帧头和帧尾都是一个字节的帧标志字段,其编码为“01111110”,与HDLC—样。信息字段长度可变,默认的最大长度是1600字节。帧效验序列也与HDLC相同,但是中间系统并不进行差错校验,只是接收端才用这个字段对整个帧进行校验。RF没有流量控制功能,表现在帧结构上是没有发送顺序号和接收顺序号字段。地址字段有3种格式,图1所示为2字节地址格式,其中的DLCI为虚电路号,FECN和BECN分别为向前拥塞和向后拥塞控制字段,而DE为1时表示优先丢弃,帧中继用这些机制实现拥塞控制。

ppp

点对点协议应用在许多场合,例如家庭用户拨号上网,或者局域网通过租用公网专线远程联网等。常用的点对点协议是PPP协议(Point-to-Point Protocol)。事实上,PPP是一组协议,其中包括:

链路控制协议LCP (Link Control Protocol),用于建立、释放和测试数据链路,以及协商数据链路参数;

网络控制协议NCP (Network Control Protocol),用于协商网络层参数,例如动态分配IP地址等;

身份认证协议,用于通信双方确认对方的链路标识。

PPP帧的封装格式(如下图所示)类似于HDLC。

PPP的地址字段为全1,表示广播地址。控制字段取值0x03,表示无编号帧。PPP 的协议字段用于标识信息字段(INFO)中封装的数据报。PPP可以支持任何网络层协议,例如 IP、IPX, AppleTalk、OSI CLNP、XNS 等。PPP 的负载(INFO)长度默认为1500 个字节。校验和(FCS)长度是可协商的,可以使用16位或32位的校验码。

也可以顺便回顾一下TCP,UDP,IP校验和的位置

http://t.csdn.cn/ODfYW

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/516216.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

web集群第一次作业

目录 一. 简述静态网页和动态网页的区别 二. 简述 Web1.0 和 Web2.0 的区别 三. 安装tomcat8,配置服务启动脚本,部署jpress应用。 一. 简述静态网页和动态网页的区别 1. 首先,两者的页面资源特征不同: 静态网页处理文件类型有…

【Linux】进程信号(完整版) --- 信号产生 信号保存 信号捕捉 可重入函数 volatile SIGCHLD信号等

🍎作者:阿润菜菜 📖专栏:Linux系统编程 文章目录 一、预备知识二、信号产生1. 通过终端按键产生信号1.1 signal()1.2 core dump标志位、核心存储文件 2.通过系统调用向进程发送信号3.由软件条件产生信号3.1 alarm函数和SIGALRM信号…

华为OD机试真题 Java 实现【知识图谱新词挖掘1】【2023Q1 100分】

一、题目描述 小华负责公司知识图谱产品,现在要通过新词挖掘完善知识图谱。 新词挖掘: 给出一个待挖掘文本内容字符串Content和一个词的字符串word,找到content中所有word的新词。 新词:使用词word的字符排列形成的字符串。 请帮小华实现新词…

【AI领域+餐饮】| 论ChatGPT在餐饮行业的应用展望

💂作者简介: THUNDER王,一名热爱财税和SAP ABAP编程以及热爱分享的博主。目前于江西师范大学会计学专业大二本科在读,同时任汉硕云(广东)科技有限公司ABAP开发顾问。在学习工作中,我通常使用偏后…

二十五、SQL 数据分析实战(9个中等难度的SQL题目)

文章目录 题目1: App 使用频率分析题目2: App 下载情况统计题目3: 寻找活跃学习者题目4: 商品分类整理题目5: 商品销售分析题目6: 网约车司机收益统计题目7: 网站登录时间间隔统计题目8: 不同区域商品收入统计题目9: 信贷逾期情况统计 题目1: App 使用频率分析 现有一张用户使…

BM64-最小花费爬楼梯

题目 给定一个整数数组 cost,其中 cost[i] 是从楼梯第i个台阶向上爬需要支付的费用,下标从0开始。一旦你支付此费用,即可选择向上爬一个或者两个台阶。 你可以选择从下标为 0 或下标为 1 的台阶开始爬楼梯。 请你计算并返回达到楼梯顶部的…

【C++初阶】类和对象(下)

一.再谈构造函数 构造函数其实分为: 1.函数体赋值 2.初始化列表 之前所讲到的构造函数其实都是函数体赋值,那么本篇文章将会具体讲述初始化列表。 初始化列表 语法 以一个冒号开始,接着是一个以逗号分隔的数据成员列表,每个"…

学成在线笔记+踩坑(11)——认证授权介绍、网关认证,SpringSecurity+JWT+OAuth2

导航: 【黑马Java笔记踩坑汇总】JavaSEJavaWebSSMSpringBoot瑞吉外卖SpringCloud黑马旅游谷粒商城学成在线牛客面试题_java黑马笔记 目录 1 【认证模块】需求分析 1.1 什么是认证授权 1.2 业务流程 1.2.1 统一认证 1.2.2 SSO单点登录 1.2.3 第三方认证 2 Spr…

java面试笔记-01-集合面试题-介绍

好了,各位同学。下面我们开始新的篇章。就是Java集合相关的面试题。相信啊,说到集合呢,你肯定是比较熟悉的。在我们之前的课程中或者是学习中,大家用过哪些集合比较多呢?List,还有Map对吧? 虽然呢,你使用起来很熟悉,但是在面试的时候,面试官呢,可不会问一些使用的问…

算法修炼之练气篇——练气三层

博主&#xff1a;命运之光 专栏&#xff1a;算法修炼之练气篇 &#x1f353;&#x1f353;十进制数转化为十进制以下任意进制&#xff08;常用记忆一下&#xff09; #include<stdio.h> int main() {//输入10 2意思就是输入十进制10转化为2进制是多少。//输出1010int num…

Learn RabbitMQ with SpringBoot

文章目录 What is RabbitMQ?RabbitMQ Core conceptRabbitMQ ArchitectureInstall and setup RabbitMQ using DockerExplore RabbitMQ using management UICreate and setup Springboot3 project in intellijSpringboot and RabbitMQ Basic MessageConnection between Springbo…

【C++ 入坑指南】(03)Hello World

大概每个程序猿的第一个程序都是 Hello World , 这是梦开始的地方。本文是C 入坑指南的第三篇&#xff0c;让我们从最经典的 Hello World 开始。 看代码 #include <iostream>using namespace std;int main() {cout << "Hello, world!" << endl;r…

Linkage Mapper 构建区域生态系统地图的指南

✅创作者&#xff1a;陈书予 &#x1f389;个人主页&#xff1a;陈书予的个人主页 &#x1f341;陈书予的个人社区&#xff0c;欢迎你的加入: 陈书予的社区 &#x1f31f;专栏地址: Linkage Mapper解密数字世界链接 文章目录 引言一、简介二、确定地图范围三、收集和整理空间数…

算法修炼之练气篇——练气一层

博主&#xff1a;命运之光 专栏&#xff1a;算法修炼之练气篇 题目1157: 亲和数 这道题很简单&#xff0c;我写的也很简单&#xff0c;看一眼就懂 题目描述 古希腊数学家毕达哥拉斯在自然数研究中发现&#xff0c;220的所有真约数(即不是自身的约数)之和为&#xff1a; 1245…

【MyBatis】 MyBatis 动态SQL使用及原理

文章目录 前言1. 动态SQL概述2. if标签3. choose、when和otherwise标签4. trim标签5. set标签和where标签6. foreach7. bind8. 动态SQL解析原理总结 前言 MyBatis 是一个优秀的持久层框架&#xff0c;它提供了丰富的 SQL 映射功能&#xff0c;可以让我们通过 XML 或注解方式来…

@SpringBootApplication深入剖析

如下图 SpringBootApplication是springboot项目启动类的注解&#xff0c;也是程序的入口,本文就是具体解析一下这个注解到底做了什么 一.SpringBootApplication的构成 1.这个注解是一个组合注解&#xff0c;他是有三个注解合成的&#xff0c;对应图中的123步&#xff0c;而这三…

新的勒索软件加密自身以逃避防病毒

一种名为 Cactus 的新型勒索软件一直在利用 VPN 设备中的漏洞对“大型商业实体”的网络进行初始访问。 Cactus 勒索软件行动至少从 3 月开始就一直活跃&#xff0c;并正在寻求受害者的大笔支出。 虽然新的威胁参与者采用了勒索软件攻击中常见的策略——文件加密和数据窃取——…

大数据Doris(十七):Random Distribution和复合分区使用场景

文章目录 Random Distribution和复合分区使用场景 一、Random Distribution 二、复合分区使用场景 Random Distribution和复合分区使用场景 一、Random Distribution 如果 OLAP 表没有更新类型的字段&#xff0c;将表的数据分桶模式设置为 RANDOM&#xff0c;则可以避免严…

架构设计之需求分析

大家好&#xff0c;我是易安。 设计架构的第一步是需求分析。那么&#xff0c;为什么要做需求分析&#xff1f;如何做好需求分析&#xff1f;今天我们一起聊一聊需求分析这件事儿 为什么要做需求分析 为何要做需求分析&#xff1f; 首先&#xff0c;当然是因为我们做软件本身就…

迭代器失效问题,以及解决方法。

迭代器的主要作用就是让算法能够不用关心底层数据结构&#xff0c;其底层实际就是一个指针&#xff0c;或者是对指针进行了封装&#xff0c;比如&#xff1a;vector的迭代器就是原生态指针T* 。因此迭代器失效&#xff0c;实际就是迭代器底层对应指针所指向的空间被销毁了&…