网络报文处理流程

报文处理流程

WLAN网络中的数据包括管理报文和业务数据报文。管理报文必须采用CAPWAP隧道进行转发,而业务数据报文除了可以采用CAPWAP隧道转发之外,还可以采用直接转发方式和Soft-GRE转发方式。

管理报文用来传送AC与AP之间的管理数据,存在于AC和AP之间。业务数据报文主要是传送WLAN用户上网时的数据,存在于STA和上层网络之间。

WLAN网络中,STA和AP间的报文为802.11报文,AP作为STA和有线网络间的桥梁,完成802.11报文的终结并转换为802.3报文,然后向有线网络中进行转发。

WLAN网络中,针对管理报文和业务数据报文分别配置不同的VLAN tag。下面用VLAN m、VLAN m'表示管理VLAN,VLAN s、VLAN s'表示业务VLAN,分别介绍管理报文和业务报文的转发流程。

  • 当AP与AC间为二层组网时,VLAN m与VLAN m'相同,VLAN s与VLAN s'相同;
  • 当AP与AC间为三层组网时,VLAN m与VLAN m'不相同,VLAN s与VLAN s'不相同。

对于WLAN网络的漫游场景,根据STA是否在同一个子网内漫游,可以将漫游分为二层漫游和三层漫游。漫游场景的管理报文转发处理流程与一般的WLAN场景没有区别,都必须采用CAPWAP隧道进行转发。而业务数据报文除了可以采用CAPWAP隧道转发之外,还可以采用直接转发方式。

管理报文的转发处理流程

如图1所示,

  • 上行(AP-->AC):管理报文由AP封装在CAPWAP报文中;由连接AP的Switch标记管理VLAN m;AC将CAPWAP报文解封装并终结管理VLAN m'。
  • 下行(AC-->AP):管理报文由AC封装在CAPWAP报文并标记管理VLAN m';由连接AP的Switch终结VLAN m;AP接收CAPWAP报文后解封装。

中间网络设备需配置和透传管理VLAN m。

图1 管理报文转发处理流程图

业务数据报文直接转发的处理流程

如图2所示,直接转发模式下,业务数据报文不经过CAPWAP封装。

  • 上行(STA-->Internet):AP收到STA的802.11格式的上行业务数据,由AP直接转换为802.3报文并标记业务VLAN s后向目的地发送。
  • 下行(Internet-->STA):下行业务数据以802.3报文到达AP(由上层网络设备标记业务VLAN s'),由AP转换为802.11格式发送给STA。

中间网络设备需配置和透传业务VLAN s,这种组网模式下,AC一般旁挂在核心交换机或汇聚交换机上,不承担数据业务转发功能,只对AP进行管理。如果AC处于直连位置时,数据报文也需要通过AC进行转发,此时AC可视为承担汇聚交换机功能。

图2 业务数据报文直接转发处理流程图

业务数据报文CAPWAP隧道转发的处理流程

如图3所示,AP与AC之间同时建立控制隧道和数据隧道,WLAN用户业务数据和管理报文分别封装在CAPWAP数据报文和CAPWAP控制报文中,在CAPWAP隧道中传递。

  • 上行(STA-->Internet):AP收到STA的802.11格式的上行业务数据,由AP直接转换为802.3报文并标记业务VLAN s,然后AP封装上行业务数据到CAPWAP报文中;由连接AP的交换机标记管理VLAN m;AC接收后解CAPWAP封装并终结VLAN m'。
  • 下行(Internet-->STA):下行业务数据由AC封装到CAPWAP报文中,AC允许携带VLAN s的报文通过并对该报文标记VLAN m',由AC标记业务VLAN s和管理VLAN m';由连接AP的交换机终结VLAN m;由AP接收后解CAPWAP封装并终结VLAN s,并将802.3报文转换为802.11报文发送给STA。

封装后的报文在CAPWAP报文外层使用管理VLAN m,AP与AC之间的网络设备只能透传管理VLAN m,而对封装在CAPWAP报文内的业务VLAN s不能放通。

AC处于直连和旁挂位置时,封装后的数据包都需要由AC处理和转发。

图3 业务数据报文CAPWAP隧道转发处理流程图

业务数据报文Soft-GRE转发的处理流程

如图4所示,Soft-GRE转发模式下,业务数据报文在Soft-GRE隧道中传输。

  • AP收到终端的802.11格式的上行业务数据,由AP直接转换为802.3报文并封装在Soft-GRE隧道中传输至网关BRAS,由BRAS进行Soft-GRE解封装并对业务数据进行统一计费和认证。
  • 下行业务数据从BRAS处开始封装在Soft-GRE隧道中传输至AP,由AP进行Soft-GRE解封装并转换为802.11格式发送给终端。

中间网络设备需要保证AP和BRAS间路由可达,业务数据报文才能在Soft-GRE隧道建立后正常传输。

图4 业务数据报文Soft-GRE转发处理流程图

二层漫游场景业务数据报文转发的处理流程

如图5所示,二层漫游后STA仍然在原来的子网中,FAP(Foreign AP)/FAC(Foreign AC)对二层漫游用户的报文转发同普通新上线用户没有区别,直接在FAP/FAC本地的网络转发,不需要通过AC间隧道转回到HAP(Home AP)/HAC(Home AC)中转。

  • 漫游前:HAP接收到STA发送的业务报文并发送给HAC,由HAC直接向目的地发送。下行业务数据通过HAC到达HAP后,由HAP发送给STA。
  • 漫游后:FAP接收到STA发送的业务报文并发送给FAC,由FAC直接向目的地发送。下行业务数据通过FAC到达FAP后,由FAP发送给STA。

图5 二层漫游场景业务数据报文转发的处理流程图

三层漫游场景业务数据报文转发的处理流程

三层漫游时,用户漫游前后不在同一个子网中,为了支持用户漫游后仍能正常访问漫游前的网络,需要将用户流量通过隧道转发到原来的子网进行中转。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

反应式编程

反应式编程 前言1 反应式编程概览2 初识 Reactor2.1 绘制反应式流图2.2 添加 Reactor 依赖 3.使用常见的反应式操作3.1 创建反应式类型3.2 组合反应式类型3.3 转换和过滤反应式流3.4 在反应式类型上执行逻辑操作 总结 前言 你有过订阅报纸或者杂志的经历吗?互联网的确从传统的…

BYTEVALUE 百为流控路由器远程命令执行漏洞

免责声明:文章来源互联网收集整理,请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该…

JavaWeb:SpringBootWeb登录认证 --黑马笔记

1.登录认证 登录认证,如果只是简单的判断用户名和密码在数据库中是否对应相等来实现这个需求是有问题的,它只是徒有其表,我们不登陆也可以访问后端系统页面,真正的登录功能应该是:登陆后才能访问后端系统页面&#xf…

Python - 面向对象编程 - 类变量、实例变量/类属性、实例属性

什么是对象和类 什么是 Python 类、类对象、实例对象 类变量、实例变量/类属性、实例属性 前言 只是叫法不一样 实例属性 实例变量 类属性 类变量 个人认为叫属性更恰当 类属性和实例属性区别 类属性,所有实例对象共享该属性实例属性,属于某一…

数据库恢复

文章目录 前言一、事务1.概念2.定义语句3.ACID特性 二、数据库恢复的必要性1.为什么要进行数据库恢复2.数据库恢复机制的作用 三、数据恢复使用的技术1.数据转储2.登记日志文件 四 、不同故障的数据恢复策略1.事务内部的故障2.系统故障3.介质故障 五、具有检查点的恢复技术1.检…

跟着pink老师前端入门教程-day24

四、移动端WEB开发之响应式布局 1、响应式开发 1.1 响应式开发原理 就是使用媒体查询针对不同宽度的设备进行布局和样式的设置,从而适配不同设备的目的。 1.2 响应式布局容器 响应式需要一个父级做为布局容器,来配合子级元素来实现变化效果。 原理…

springboot181基于springboot的乐享田园系统

简介 【毕设源码推荐 javaweb 项目】基于springbootvue 的 适用于计算机类毕业设计,课程设计参考与学习用途。仅供学习参考, 不得用于商业或者非法用途,否则,一切后果请用户自负。 看运行截图看 第五章 第四章 获取资料方式 **项…

CSS基础---新手入门级详解

CSS:层叠样式表 CSS&#xff08;Cascading Style Sheets,层叠样式表&#xff09;&#xff0c;是一种用来为结构化文档添加样式&#xff08;字体、间距和颜色&#xff09;的计算机语言&#xff0c;css扩展名为.css。 实例: <!DOCTYPE html><html> <head><…

通过容器化释放云的力量

NCSC (英国国家网络安全中心) 经常被问到的一个问题是是否在云中使用容器。这是一个简单的问题&#xff0c;但答案非常微妙&#xff0c;因为容器化的使用方式有很多种&#xff0c;其中一些方法比其他方法效果更好。 今天&#xff0c;我们发布了有关使用容器化的安全指南&#…

C++ //练习 5.19 编写一段程序,使用do while循环重复地执行下述任务:首先提示用户输入两个string对象,然后挑出较短的那个并输出它。

C Primer&#xff08;第5版&#xff09; 练习 5.19 练习 5.19 编写一段程序&#xff0c;使用do while循环重复地执行下述任务&#xff1a;首先提示用户输入两个string对象&#xff0c;然后挑出较短的那个并输出它。 环境&#xff1a;Linux Ubuntu&#xff08;云服务器&#x…

没更新的日子也在努力呀,布局2024!

文章目录 ⭐ 没更新的日子也在努力呀⭐ 近期的一个状态 - 已圆满⭐ 又到了2024的许愿时间了⭐ 开发者要如何去 "创富" ⭐ 没更新的日子也在努力呀 感觉很久没有更新视频了&#xff0c;好吧&#xff0c;其实真的很久没有更新短视频了。最近的一两个月真的太忙了&#…

SpringBoot3整合Knife4j

前置&#xff1a; 官网&#xff1a;快速开始 | Knife4j gitee&#xff1a;swagger-bootstrap-ui-demo: knife4j 以及swagger-bootstrap-ui 集成框架示例项目 - Gitee.com 1.依赖引入&#xff1a; ps&#xff1a;json处理需要引入相关包 <dependency><groupId>c…