当前位置: 首页 > news >正文

QinQ技术与Portal技术

QinQ

  • 802.1Q-in-802.1Q,是一种扩展VLAN标签技术。在城域网中,需要大量的VLAN来隔离区分不同的用户,但是原有的802.1Q只有12个比特,仅能标识4096个VLAN
  • QinQ即在802.1Q的基础上,再增加一层外层标签。使得可以标识4096*4096个标签,大大增加了可以划分的VLAN数量
  • 数据帧拥有两层标签后,内外层标签信息可以代表着不同的信息。比如内层标签来区分用户,外层标签区分业务。内层标签在运营商网络透明传输,有助于运营商实现业务精细化运营
  • 基本原理
    • 封装两层VLAN标签后,在公网中传输,设备只根据外层的VLAN标签指导转发,并学习MAC地址,内层的VLAN标签会被作为数据部分直接转发
    • 在运营商的PE侧,可以将用户的不同私网VLAN打上相同的外层公网VLAN标签,公网设备根据外层标签指导转发,到达对端的PE设备后,剥离外层的标签,再交给用户网络的CE设备
  • 封装方式

  • 由于增加了一层标签,所以数据帧的大小也会变大,所以就需要设置转发设备接口所能发出的最大帧长(默认是1500)
  • QinQ实现方式
    • 基本QinQ
      • 根据接口进行外层标签的封装。
      • 无论收到的数据帧是否含有标签,都会再原有的基础上添加一层本端口所属的缺省标签
    • 灵活QinQ
      • 基于接口、VLAN、802.1p优先级来封装外层标签
      • 收到没有标签的数据帧则增加一层缺省VLAN标签;收到有一层标签的数据帧,可以根据内层的标签范围打上相应的外层标签;收到有一层标签的数据帧,可以根据内层标签的802.1p优先级标记外层标签的优先级,并打上外层标签
  • QinQ的封装反方式
    • 基于接口
      • 即QinQ二层隧道。对于进入相同接口的流量全部封装相同的VLAN标签,封装方式不够灵活,不能细致区分不同的业务
    • 基于流
      • 即二层灵活QinQ。对于进入相同接口的流量,可以根据不同的数据流,选择是否进行外层标签的封装以及封装什么标签
    • 在路由器基于子接口
      • QinQ Stacking子接口。QinQ一般是在二层接口上进行封装。但是当MPLS/IP核心网采用PWE3/VLL/VPLS透传业务数据时,NPE上的路由子接口可以根据用户VLAN ID封装外层VLAN ID,通过外层VLAN ID接入VLL/PWE3。通过一个子接口,透传多个标识用户的VLAN
      • QinQ Stacking子接口只能和L2VPN(PWE3/VLL/VPLS)业务结合起来才有意义,不支持三层转发功能
    • 不同运营商的系统可能将QinQ帧外层VLAN标记的TPID设置为不同值。为实现与这些系统的兼容性,可以修改TPID值,使QinQ帧发送到公网时,承载与特定运营商相同的TPID值,从而实现与该运营商设备之间的互操作性
  • QinQ Mapping
    • 功能类似于NAT技术,可以将私网的VLAN标签替换为运营商分配的VLAN标签,一次达到屏蔽不同用户VLAN的作用
    • 适用场景:
      • 新局点和老局点部署的VLAN ID冲突,但是新局点需要与老局点互通
      • 接入公网的各个局点规划不一致,导致VLAN ID冲突,但是各个局点之间不需要互通
      • 公网两端的VLAN ID规划不对称
    • 映射方式
      • 一对一:收到只有一层标签的数据报文,直接将标签映射为指定的一层标签
      • 二对一:收到有两层标签的数据报文,只将外层标签映射为指定的一层标签
  • QinQ Mapping与VLAN Mapping

Mapping类型

相同点

不同点

1 to 1

接口收到Tagged帧后,将帧中的一层Tag映射为用户指定的一层Tag

  • QinQ Mapping的映射动作发生在子接口上,并且主要用于接入VPLS网络
  • VLAN Mapping的映射动作发生在主接口上,并且主要用于通过VLAN转发的二层网络

2 to 1

入接口收到的帧带有两层Tag。将帧中的外层Tag映射为用户指定的一层Tag,内层Tag作为业务数据透传

  • QinQ Mapping的映射动作发生在子接口上,并且主要用于接入VPLS网络
  • VLAN Mapping的映射动作发生在主接口上,并且主要用于通过VLAN转发的二层网络
  • 配置
    • 华为

#基本QinQ

interface g0/0/1
 port link-type dot1q-tunnel

 port default vlan vlan-id

#灵活QinQ
interface g0/0/1
 port link-type hybrid

 port hybrid untagged vlan vlan-id

 qinq vlan-translation enable

 port vlan-stacking vlan vlan-id1 stack-vlan vlan-id3

 port vlan-stacking vlan vlan-id1 stack-vlan vlan-id2  map-vlan vlan-id4

  • 华三 & 锐捷

description to SXS-1F

port link-type trunk

port trunk permit vlan

port trunk pvid vlan *

qinq enable

qinq transparent-vlan *

switchport mode dot1q-tunnel
switchport dot1q-tunnel allowed vlan add tagged *
switchport dot1q-tunnel allowed vlan add untagged *
switchport dot1q-tunnel native vlan *
dot1q outer-vid * register inner-vid *

  • Portal认证也称为Web认证。当用户未认证时,会被强制登录到特定站点,用户可以免费访问其中的服务。当用户需要访问互联网时,就需要在门户网站(即Portal认证界面)中进行认证,认证通过后才可以正常上网
  • 用户可以主动访问门户网站进行认证(主动认证),也可以通过访问其他HTTP网站流量触发强制跳转到门户网站进行认证(强制认证)
  • Portal认证体系机构包括有外置的Portal认证服务器和内置的Portal认证服务器

Portal认证方式

  • 二层认证
    • 认证客户端与设备直连,或者中间只有二层设备,设备可以直接学习到用户的MAC地址,通过IP和MAC地址来标识用户
    • 二层认证流程简单,安全性高,但由于限制了用户只能与接入设备处于同一网段,降低了组网的灵活性

  • 三层认证
    • Portal认证服务器部署在汇聚或核心层,认证客户端与设备之间存在三层转发设备,设备无法直接学习到认证客户端的MAC地址,只能通过IP地址来识别认证客户端
    • 三层认证组网灵活,容易实现远程控制,但由于只有IP可以用来标识一个用户,所以安全性不高
  • Portal认证探测与逃生功能
    • 当Portal服务器与设备之间的网络出现故障,或Portal服务器自身出现故障,则会造成新的Portal认证用户无法上线,已经在线的Portal用户无法正常下线,会给用户带来不便,甚至带来计费不准确的问题
    • Portal探测和逃生功能可以保证在网络故障或Portal服务器无法正常工作的情况下,用户仍然可以正常使用网络,可以通过日志和Trap的方式报告故障。设备可以通过用户信息同步机制,保证Portal服务器与设备上用户信息的一致性,以避免出现计费不准确的问题

Portal认证协议

  • Portal接入协议
    • HTTP/HTTPS协议:描述了客户端和Portal服务器之间的协议交互。客户端通过HTTP/HTTPS协议依次向Portal服务器发起连接请求和Portal认证请求
  • Portal认证协议
    • Portal协议:描述了Portal服务器和接入设备之间的协议交互,可以用来传递用户名和密码等参数
    • HTTP/HTTPS协议:描述了客户端和接入设备之间的协议交互,可以用来传递用户名和密码等参数

Portal认证用户下线

  • 客户端主动下线
  • 接入设备控制客户端下线
    • 可以强制将用户下线,也可以通过用户探测功能,探测用户是否在线,若不在线则删除用户表项
  • 认证服务器强制用户下线
    • Redius服务器通过DM报文强制用户下线
  • Portal认证服务器强制用户下线


以上内容均属原创,如有不详或错误,敬请指出。

本文作者: 坏坏

本文链接:http://t.csdn.cn/q6VMm

版权声明: 转载请联系作者注明出处并附带本文链接!

相关文章:

QinQ技术与Portal技术

QinQ 802.1Q-in-802.1Q,是一种扩展VLAN标签技术。在城域网中,需要大量的VLAN来隔离区分不同的用户,但是原有的802.1Q只有12个比特,仅能标识4096个VLANQinQ即在802.1Q的基础上,再增加一层外层标签。使得可以标识4096*40…...

Vue-自定义表单验证(rule,value,callback)详细使用

前言 最近在实际开发中遇到需要验证合同编号是否在数据库已经存在,自定义表单验证。 的表单验证大家都知道form绑定rules,prop绑定值与form.值一样,必填,失去焦点触发 提示信息。 今天我们讲一讲自定义验证规则具体使用场景和它…...

港联证券|TMT板块全线退潮,这些个股获主力逆市抢筹

计算机、电子、传媒、通讯职业流出规模居前。 今天沪深两市主力资金净流出709.92亿元,其中创业板净流出218.36亿元,沪深300成份股净流出187.92亿元。 资金流向上,今天申万一级职业普跌,除了国防军工职业小幅上涨,获主…...

WPF学习

一、了解WPF的框架结构 (第一小节随便看下就可以,简单练习就行) 1、新建WPF项目 xmlns:XML的命名空间 Margin外边距:左上右下 HorizontalAlignment:水平位置 VerticalAlignment:垂直位置 2…...

C#使用WebDriver模拟浏览器操作WEB页面

有时候需要模拟访问页面触发某个功能,可以使用WebDriver来实现这一功能,驱动打开浏览器,并对页面重定向以及对页面写入脚本等操作。 安装Selenium.Chrome,Selenium.Support.UI,Selenium 引入 using OpenQA.Selenium.…...

正则表达式 - 简单模式匹配

目录 一、测试数据 二、简单模式匹配 1. 匹配字面值 2. 匹配数字和非数字字符 3. 匹配单词与非单词字符 4. 匹配空白字符 5. 匹配任意字符 6. 匹配单词边界 7. 匹配零个或多个字符 8. 单行模式与多行模式 一、测试数据 这里所用文本是《学习正则表达式》这本书带的&a…...

银行数字化转型导师坚鹏:银行数字化转型培训方案

目录 一、银行数字化转型培训背景 二、银行数字化转型模型 三、银行数字化转型课程设计思路 四、 银行数字化转型课程基本介绍 五、 银行数字化转型课程设置 六、银行数字化转型课程大纲 七、培训方案实施流程 一、银行数字化转型培训背景 2020年1月3日&#xff…...

多维时序 | MATLAB实现BO-CNN-LSTM贝叶斯优化卷积神经网络-长短期记忆网络多变量时间序列预测

多维时序 | MATLAB实现BO-CNN-LSTM贝叶斯优化卷积神经网络-长短期记忆网络多变量时间序列预测 目录 多维时序 | MATLAB实现BO-CNN-LSTM贝叶斯优化卷积神经网络-长短期记忆网络多变量时间序列预测效果一览基本介绍模型搭建程序设计参考资料 效果一览 基本介绍 MATLAB实现BO-CNN-…...

Shell知识点(一)

1.echo 命令 echo命令的作用是在屏幕输入一行文本&#xff0c;可以降该命令的参数原样输出。 $ echo hello world hello world 如果想要输出的是多行文本&#xff0c;包含换行符&#xff0c;这时就需要把多行文本放在引号里面 $ echo "<HTML><HEAD><TITLE…...

mysql 索引失效、联合索引失效场景和举例

索引失效 假设有一张user 表&#xff0c;表中包含索引 (id); (name); (birthday); (name,age); 对索引字段进行函数操作 select name from user where year(birthday) 2000;使用模糊查询&#xff0c;查询中使用通配符 select name from user where name like %益达%;使用i…...

快速将PDF转换为图片:使用在线转换器的步骤

PDF文件是一种常见的文档格式&#xff0c;但在某些情况下需要将其转换为图片格式&#xff0c;例如将PDF文件插入PPT演示文稿中。此时&#xff0c;使用在线PDF转换器是一种快速且简便的方法。 本文将介绍如何使用在线转换器将PDF文件转换为图片格式。 步骤1&#xff1a;选择合…...

什么是gpt一4-如何用上gpt-4

怎么使用gpt-4 目前GPT-4还未正式发布或公开&#xff0c;因此也没有详细的对接说明。但是我们可以根据GPT-4的前身GPT-3的应用经验&#xff0c;以及GPT-4的预期功能推测一些可能的使用步骤&#xff1a; 选择适合的GPT-4实现技术&#xff1a;GPT-4可能有不同的实现技术&#xff…...

Docker 相关概念

1、Docker是什么&#xff1f; 如何确保应用能够在这些环境中运行和通过质量检测&#xff1f;并且在部署过程中不出现令人头疼的版本、配置问题&#xff0c;也无需重新编写代码和进行故障修复&#xff1f; 答案就是使用容器。Docker之所以发展如此迅速&#xff0c;也是因为它对…...

STM32平衡小车 TB6612电机驱动学习

TB6612FNG简介 单片机引脚的电流一般只有几十个毫安&#xff0c;无法驱动电机&#xff0c;因此一般是通过单片机控制电机驱动芯片进而控制电机。TB6612是比较常用的电机驱动芯片之一。 TB6612FNG可以同时控制两个电机&#xff0c;工作电流1.2A&#xff0c;最大电流3.2A。 VM电…...

动态加载 JS 文件

动态加载JS文件是指在网页运行过程中通过JavaScript代码向页面中动态添加外部JS文件&#xff0c;这种方式能够提高页面加载速度和用户体验&#xff0c;并且可以帮助网站实现更多的功能和特效。 本文将详细介绍动态加载JS文件的基本原理、优势、注意事项以及具体实现方法&#…...

14、lldb调试指令

LLDB LLDB(Low Lever Debug): 默认内置于Xcode中的动态调试工具.标准的lldb提供了一组广泛的命令,旨在与老版本的GDB命令兼容.除了使用标准配置外,还可以很容易地自定义lldb以满足实际需要. 1.1 lldb语法: <command> [<subcommand> [<subcommand>...]] &l…...

浏览器缓存策略:强缓存和协商缓存

浏览器缓存&#xff1a;其实就是在本地使用的计算机中开辟一个内存区&#xff0c;同时也开辟一个硬盘区&#xff0c;作为数据传输的缓冲区&#xff0c;然后利用这个缓冲区来暂时保护用户以前访问的信息通常浏览器的缓存策略分为两种&#xff1a;强缓存和协商缓存&#xff0c;强…...

2023年Chat GPT 应用前景分析

从2022年12月初刚上线至今&#xff0c;不到半年时间ChatGPT月活就超过了1亿用户&#xff01;可谓火的一塌糊涂&#xff0c;比尔盖茨都称&#xff1a;ChatGPT的历史意义重大&#xff0c;不亚于PC或互联网诞生。以至于ChatGPT官网长期都处于满负荷运转的状态&#xff01; 由于Ch…...

并发计算公式

常用并发数计算公式&#xff1a;N[(n0.8SP)/(T0.2)]*R 其中&#xff1a; n为系统用户数&#xff1b; S为每个用户发生的业务笔数&#xff08;QPS&#xff09;&#xff1b; P为每笔业务所需要访问服务器的时间&#xff0c;单位为秒&#xff1b; T为使用业务的时间&#xff0c;单…...

“华为杯”研究生数学建模竞赛2020年-【华为杯】E题:能见度估计与预测(附获奖论文及python代码实现)

​​​​​​​ 目录 摘 要: 一、问题背景与问题重述 1.1 问题背景 1.2 问题重述...

业务系统对接大模型的基础方案:架构设计与关键步骤

业务系统对接大模型&#xff1a;架构设计与关键步骤 在当今数字化转型的浪潮中&#xff0c;大语言模型&#xff08;LLM&#xff09;已成为企业提升业务效率和创新能力的关键技术之一。将大模型集成到业务系统中&#xff0c;不仅可以优化用户体验&#xff0c;还能为业务决策提供…...

基于ASP.NET+ SQL Server实现(Web)医院信息管理系统

医院信息管理系统 1. 课程设计内容 在 visual studio 2017 平台上&#xff0c;开发一个“医院信息管理系统”Web 程序。 2. 课程设计目的 综合运用 c#.net 知识&#xff0c;在 vs 2017 平台上&#xff0c;进行 ASP.NET 应用程序和简易网站的开发&#xff1b;初步熟悉开发一…...

Admin.Net中的消息通信SignalR解释

定义集线器接口 IOnlineUserHub public interface IOnlineUserHub {/// 在线用户列表Task OnlineUserList(OnlineUserList context);/// 强制下线Task ForceOffline(object context);/// 发布站内消息Task PublicNotice(SysNotice context);/// 接收消息Task ReceiveMessage(…...

在Ubuntu中设置开机自动运行(sudo)指令的指南

在Ubuntu系统中&#xff0c;有时需要在系统启动时自动执行某些命令&#xff0c;特别是需要 sudo权限的指令。为了实现这一功能&#xff0c;可以使用多种方法&#xff0c;包括编写Systemd服务、配置 rc.local文件或使用 cron任务计划。本文将详细介绍这些方法&#xff0c;并提供…...

《基于Apache Flink的流处理》笔记

思维导图 1-3 章 4-7章 8-11 章 参考资料 源码&#xff1a; https://github.com/streaming-with-flink 博客 https://flink.apache.org/bloghttps://www.ververica.com/blog 聚会及会议 https://flink-forward.orghttps://www.meetup.com/topics/apache-flink https://n…...

初学 pytest 记录

安装 pip install pytest用例可以是函数也可以是类中的方法 def test_func():print()class TestAdd: # def __init__(self): 在 pytest 中不可以使用__init__方法 # self.cc 12345 pytest.mark.api def test_str(self):res add(1, 2)assert res 12def test_int(self):r…...

【C++特殊工具与技术】优化内存分配(一):C++中的内存分配

目录 一、C 内存的基本概念​ 1.1 内存的物理与逻辑结构​ 1.2 C 程序的内存区域划分​ 二、栈内存分配​ 2.1 栈内存的特点​ 2.2 栈内存分配示例​ 三、堆内存分配​ 3.1 new和delete操作符​ 4.2 内存泄漏与悬空指针问题​ 4.3 new和delete的重载​ 四、智能指针…...

通过MicroSip配置自己的freeswitch服务器进行调试记录

之前用docker安装的freeswitch的&#xff0c;启动是正常的&#xff0c; 但用下面的Microsip连接不上 主要原因有可能一下几个 1、通过下面命令可以看 [rootlocalhost default]# docker exec -it freeswitch fs_cli -x "sofia status profile internal"Name …...

Python 高级应用10:在python 大型项目中 FastAPI 和 Django 的相互配合

无论是python&#xff0c;或者java 的大型项目中&#xff0c;都会涉及到 自身平台微服务之间的相互调用&#xff0c;以及和第三发平台的 接口对接&#xff0c;那在python 中是怎么实现的呢&#xff1f; 在 Python Web 开发中&#xff0c;FastAPI 和 Django 是两个重要但定位不…...

精益数据分析(98/126):电商转化率优化与网站性能的底层逻辑

精益数据分析&#xff08;98/126&#xff09;&#xff1a;电商转化率优化与网站性能的底层逻辑 在电子商务领域&#xff0c;转化率与网站性能是决定商业成败的核心指标。今天&#xff0c;我们将深入解析不同类型电商平台的转化率基准&#xff0c;探讨页面加载速度对用户行为的…...