HomePlug AV
目录
- HomePlug AV的基本概念
- 基本术语
- 网络概念
- 网络实例
 
- HomePlug AV物理层(PHY)
- HomePlug AV OFDM收发器架构
- PHY的调制模式
- FC调制和ROBO调制
- 物理层的特点
- OFDM频域/时域转换
- 开窗/槽式OFDM
- 信号和噪声
- PHY发送控制——信道自适应
- PHY帧格式(Symbol)
- PPDU物理协议数据单元帧格式描述
- Homeplug AV物理速率
 
- HOMEPLUG AV媒体访问控制(MAC)
- MAC层数据平面
- MAC层数据层次结构
- MAC调度
- Homeplug AV MAC简介
- Ⅰ
- Ⅱ
- Ⅲ
 
- MAC帧
- MSDU MAC业务数据单元
- MAC帧格式(MPDU)
- MAC成帧过程
 
HomePlug AV的基本概念
基本术语
- Station(STA):一个STA(站点,对应于EoC中的Slave,终端或者CNU)是在网络中和电力线连接可以发送或者接收数据流的设备。
- Central Coordinator(CCo):中央协调器(对应EoC的头端,集中器或者CLT)是带有超级功能的STA: - Beacon Generation, association and authentication of STAs
- provisioning of Temminal Equipment ldentifiers (TEls) which are short formdevice addresses
- provisioning of Global Link ldentifiers (GLIDs)
- coordination of medium allocation within a network and with
 neighboring networks
- provides admission control and scheduling (preferred CCo-in V2.0
 only)
 
网络概念
- Physical Network(PhyNet)物理网络: 对应一个给定的STA或者Cco,其物理网络的概念是能和这个指定的STA或者Cco直接物理通信的所有站点集合。也就是说,不需要中继就能直接通信,相互能 “看见” 的站点的集合。
- AV In-Home Logical Network(AVLN):家庭AV逻辑网络,是指共享同一个“网络成员密钥Network Membership Key(NMK)”的站点集合。在一个AVLAN中由一个单独的中央协调器Cco来管理所有的STA。(相当于EoC网络中一个头端管理下面的终端,都是由相同的网络密钥)。
网络实例

 网络A:
- 所有的STA都可以互相通信,所有的STA都在同一个物理网络PhyNet{A, B, C, D, CCo1}
- 一个AVLN家庭AV逻辑网络

 网络B:
- 多个(2个)物理网络PhyNets: - CCo1的PhyNet是{CCO1,A,B}
- CCo2的PhyNet是{C,D,CCo2}
 
- 两个AVLN的两个Cco可以互相通信,形成neighboring networks邻居网络

 网络C:
- CCo1的物理网络PhyNet不包括站点D(D是一个隐藏STA:a hidden STA-D不在Cco的物理网络,但是Cco的物理网络至少有一个站点STA C能和STA D通信。即STA D的物理网络至少有一个站点在CCo1内。
- 一个AVLN家庭AV逻辑网络。
AVLN内部通信规则:
属于同一个AVLN网络的两个STA,是可以互相通信的,即使他们不在同一物理网络中。如上图网络C中的,A、B和C、D不在同一网络,但也是可以相互通信的。但是在上图网络C中,C、D站点都不能直接接收到A或者B的广播信息。
在网络C中,C需要充当Proxy Cco功能,使得D可以被CCo1管理
STAs作为桥设备和其他网络,如:以太网、PCI、WIFI等网络连接
HomePlug AV物理层(PHY)
HomePlug AV OFDM收发器架构

 OFDM (Orthogonal frequency-division multiplexing, 正交频分复用) 是一种多载波调制技术。因其能有效对抗频率选择性衰落,克服信号符号间干扰 (inter-symbol interference) ,可以将OFDM与MIMO进行高效结合,实现高速数据传输。
PHY的调制模式
- 采用OFDM调制。(频率选择性强,抗窄频段干扰,抗脉冲干扰能力强)
- 子载波频率间隔为24.414KHz,频段1.8M~30M,并可向上扩展到50MHz、75MHz、100MHz
- 支持BPSK、QPSK、8QAM、16QAM、64QAM、256QAM、1024QAM、4096QAM
- 支持的FEC速率为 1/2、16/21、8/9
- 特殊报文采用特殊的调制和编码方式(提高可靠性) - STD-RoBo(Robust Mode) 4Copies
- Mini-RoBo(5 Copies, PB136)
- HS-RoBo(2Copies)
 
- FC(AV是标准128bit)采用的是标准QPSK编码,一个Symbol传输,采用交织和多份Copies,也可以选择采用2个Symbol传输。
FC调制和ROBO调制

FC采用单独的编码( 1/2 FEC),使用更多的拷贝方式,使得数据传输更可靠。
缺省采用ROBO模式的报文
- Beacon信标报文和广播、多播数据报文
- 建立会话
- 管理报文MME
物理层的特点
开窗式OFDM调制
- 前导波形,帧控制和有效负荷都采用功率陷波方式,相当于OFDM开槽/开窗,把一些与业余无线电,广播相冲突的频道陷波掉,且不需要增加额外的滤波器。
- 1.8M~30MHz共1155个子载波,去掉无线电干扰等频段后共917子载波;可扩展到50MHz、100MHz频段。
- 子载波的调制模式:BPSK to 4096QAM - 每个子载波根据信噪比情况采用最佳调制方式
 
- FC帧控制,信标和负荷都采用增强型FEC前向纠错技术 - FC采用16bytes(128bit),Beacon信标采用136Bytes,Payload负荷采用520Bytes数据块:FC采用多份拷贝模式,Beacon采用ROBO模式。
- 接近理论的性能数据(0.5dB from Shannon Capacity)
 
- 交织模式(Interleave)克服脉冲噪声和其他电力线噪声的影响
- FC帧控制帧,Beacon信标帧和ROBO模式传输报文采用空间分集方式(多份拷贝)提高可靠性
- 兼容HomePlug1.0标准,支持HP1.0和AV的混合模式
- HomePlugAV支持大于200Mbps物理速率,新一代的AV已经达600Mbps的物理速率
- 家庭网络In-home和接入网Access BPL采用统一的PHY技术
OFDM频域/时域转换

开窗/槽式OFDM
缺省的北美子载波模板开窗图(2-28MHz,917个子载波)

信号和噪声

 每个子载波(又称为OFDM通道)可根据信噪比分配 2、3、4、6、8 or 10 bits
包含广播和多播的ROBO模式或者MME管理
200Mbps的物理速率,150Mbps以上有效速率(FEC解调后的速率)
接近香农理论的Turbo FEC性能
PHY发送控制——信道自适应

 由于交流电力线的噪声随交流电周期同步,不同的相位噪声不同,如峰值附近噪声最大,因此,把一个Beacon周期分为不同的时间片Slot,每个时间片单独进行信道评估,进行信道训练,获取bit分配图(Tone Map),以获取最优性能,否则只能按照最初噪声来适应线路。
PHY发送,以PB块为分隔,重传ARQ也是以PB是否正确来决定是否重传。FC采用一个OFDM Symbol,且采用ROBO模式明文传输,以便其他STA也都能侦听到此信号。FC后面可以跟多个PB数据块
PB块的传输时间(要用多少Symbol),由Bit Allocation来决定
PHY帧格式(Symbol)
两种报文:PPDU
- 带FC + Payload(Long PPDU)
- 仅带FC(Short PPDU)
关于Payload PPDU净荷数据
- 数据帧
- 管理帧MME
PPDU帧格式(PHY Protocol Data Unit)
- Hybrid模式:Preamble + 1.0 FC + AVFC
- AV模式:Preamble + AV FC
PPDU物理协议数据单元帧格式描述
- PPDU(PHY Protocol Data Unit):是指由物理层产生的直接发送到电力线上的物理实体
- PPDU帧结构包含AV前导码Preamble,AV的帧控制字FC和AV的净荷

Homeplug AV物理速率
| 1.8M~ | 7.5MHz~ | 7.5MHz~65MHz | 备注 | |
|---|---|---|---|---|
| 最大速率 | 198Mbps/150Mbps | 225Mbps/171Mbps | 690Mbps/613Mbps | 表格中的速率为FEC前/FEC后速率 | 
| Standard ROBO | 5Mbps | 5.7Mbps | 18Mbps | |
| HS ROBO | 10Mbps | 11.4Mbps | 36Mbps | |
| Mini ROBO | 3.8Mbps | 4.3Mbps | 13Mbps | 
Homeplug AV最高调制是1024QAM,FEC最高是16/21
P1901标准支持4096QAM,FEC最高是8/9
HOMEPLUG AV媒体访问控制(MAC)
MAC层数据平面

MAC层数据层次结构

 MAC层通过Frame Control(FC)字段来控制MPDU的类型,同时也通知物理层按照不同的模式采用不同的调制方式、速率等等
- Beacon;136Bytes的Beacon MPDU
- SoF
- SACK,不包含具体数据,只有FC帧
- RTS/CTS,SACK和RTS/CTS都是不包含具体数据的帧,只有FC帧
- Sound
MAC调度
Homeplug是采用基于Beacon的周期信道接入访问机制。(Beacon周期等于AC时钟周期的两倍)。按照Beacon来做调度,基于Beacon周期的接入访问控制机制来处理的。

Homeplug AV MAC简介
Ⅰ
支持直接封装以太网报文传输(Ethernet Over PLC)
MAC层的帧结构是按照高效传输和重传设计的
- 需要容忍脉冲噪声带来的高误码率
- 物理层的传输错误是基于FEC数据块的 => 仅需重传破坏的FEC数据块,重传仅发生在物理层
成帧的基本方法
- 基于以太网报文的目的地址(Destination Address)和QOS要求,把以太网报文汇集成不同的MAC帧流MAC Frame Streams
- 每类MAC帧流分割为512字节数据块,作为一个独立的FEC块
- 每一块数据块都有对应的系列号,使得如果数据块丢失或者破坏都可以单独重传,接收端也按照顺序重组MAC帧,并按照正确的顺序送到上层主机接口
分段数据的加密
- 减小加密开销,不需要额外的开销
- 加密是作为物理数据流的一部分,简化设计
Ⅱ
系统采用标准的IEEE 48-bit MAC地址编码方式
支持电力线网络和其他网络,如:以太网、PCI等设备的桥接功能
MAC支持物理层自适应速率
信道评估是由MAC层实体按照信道的条件最优化其物理调制参数
Automatic Repeat Request(ARQ)自动重传保证MAC层的单播可靠传输
部分应答 “Partial ARQ” 提高主播和广播的可靠性,使得发送端知道至少有一个终端接收到数据报文
数据分段减小在物理速率低的情况下的最大传输时间,提高QoS能力
Ⅲ
CCo集中协调器集中管理网络
网络接入的三种工作模式:
- Beacon信标:非冲突模式 Non-contention. Cco在特定的时隙发送 Beacon
- 冲突避免模式Contention-free:QOS保证,只有分配的STA才能发送数据
- CSMA载波检测多路复用:竞争Contention-based. 基于用户数据和MME报文的优先级调度
Beacon信标周期分为不同的 Regions
- 有Beacon信标统一调度
- 在同一 Regions 进一步分配调度
- 信标周期和交流同步
MAC帧
两种帧(2Octet MACHeader)MSDU(MAC Service Data Unit,MAC业务数据单元)
- 普通数据帧,以太网数据报文
- 管理帧,MME信息
MPDU(MAC Protocol Data Unit,MAC协议数据单元)
- FC帧(指示)
- 数据帧
MSDU MAC业务数据单元
“MSDU"是指需要MAC层传输的数据信息。实际就是不包含CRC的以太网净荷报文。
无连接connectionless的MSDU包含一个MSDU负荷报文或者一个MME报文。对于无连接的MSDU通过对MSDU负荷报文增加一个MAC帧控制头Frame Header和在尾部证据校验Integrity Check Value(ICV)形成MAC层数据报MPDU
HomePlug AV在发送所有的MME管理报文都是采用无连接方式,并且是形成单独的MME数据流(MAC帧流)。
MAC帧头MAC Frame Header表明传输的是MME管理报文还是MSDU净荷报文。这个信息是作为MAC层分段Segment时形成不同的MAC数据流。(按照目的地址和QOS要求)
MME报文不能采用有连接方式传输。connection-based
MAC帧格式(MPDU)
MAC帧
- MSDU和MAC帧是一一对应的
- MAC帧的帧头Frame Header包含帧类别和帧长度
- ATS is the Arrival Time Stamp
- MSDU payload is the Ethernet frame
- ICV is Integrity Check Value

MAC成帧过程
- 连接:连接是指一个STA和一个或者多个STA之间的上层主机接口建立的数据传输流,是相关的MSDU的集合。连接可以是单向的也可以是双向的。
- 无连接的数据流只能和同一目的的MME报文结合
- MAC帧由MSDU产生,属于同一数据流的多个MAC帧形成MAC帧流

相关文章:
 
HomePlug AV
目录 HomePlug AV的基本概念基本术语网络概念网络实例 HomePlug AV物理层(PHY)HomePlug AV OFDM收发器架构PHY的调制模式FC调制和ROBO调制物理层的特点OFDM频域/时域转换开窗/槽式OFDM信号和噪声PHY发送控制——信道自适应PHY帧格式(Symbol&a…...
 
【面试八股总结】超文本传输协议HTTP(二)
参考资料 :小林Coding、阿秀、代码随想录 一、HTTP缓存技术 将资源(如网页、图像、脚本等)的副本存储在客户端或中间代理服务器上,以便将来的请求可以直接从缓存中获取,而不必重新从服务器下载资源。这有助于减少网…...
SQL Server中视图使用子查询的性能影响与优化方案
在SQL Server中,视图(View)是一种虚拟的表,其内容由查询定义。在视图中,我们可以使用子查询来组合和呈现数据,这为数据呈现提供了灵活性,但同时也可能带来一些性能上的问题。本文将深入分析视图…...
 
Adaboost集成学习 | Matlab实现基于SVM-Adaboost支持向量机结合Adaboost集成学习时间序列预测(股票价格预测)
目录 效果一览基本介绍模型设计程序设计参考资料效果一览 基本介绍 Adaboost集成学习 | 基于SVM-Adaboost支持向量机结合Adaboost集成学习时间序列预测(股票价格预测)基于SVM(支持向量机)和AdaBoost集成学习的时间序列预测(如股票价格预测)是一种结合了两种强大机器学习算…...
 
Apache DolphinScheduler 【安装部署】
前言 今天来学习一下 DolphinScheduler ,这是一个任务调度工具,现在用的比较火爆。 1、安装部署 1.0、准备工作 1.0.1、集群规划 dolphinscheduler 比较吃内存,所以尽量给 master 节点多分配一点内存,桌面和虚拟机里能关的应用…...
 
【随笔】Git -- 高级命令(上篇)(六)
💌 所属专栏:【Git】 😀 作 者:我是夜阑的狗🐶 🚀 个人简介:一个正在努力学技术的CV工程师,专注基础和实战分享 ,欢迎咨询! 💖 欢迎大…...
 
java中Date类,SimpleDateFormat类和Calendar类
Date类 public Date() 创建一个Date对象,代表的是系统当前此刻的日期时间 public Date(long date) Constructs a Date object using the given milliseconds time value. 把时间毫秒值转变成Date日期对象 public void setTime(long date) Sets an existing Date ob…...
 
施耐德 PLC 控制系统 产品 + 软件总体介绍 2020
参考 2020.7 官方说明视频:https://www.bilibili.com/video/BV1Mi4y1G7Qc/ 总体说明 施耐德作为工业控制界巨头(公认的几大巨头:西门子、AB、施耐德),PLC 控制器产品线很庞大,涵盖了高中低的完整产品线&…...
 
UniApp 应用发布到苹果商店指南
🚀 想要让你的 UniApp 应用在苹果商店亮相吗?别着急,让我来带你一步步完成这个重要的任务吧!在这篇博客中,我将详细介绍如何将 UniApp 应用顺利发布到苹果商店,让你的应用跻身于苹果生态之中。 引言 &…...
KamaCoder 46. 携带研究材料(第六期模拟笔试)
题目描述 小明是一位科学家,他需要参加一场重要的国际科学大会,以展示自己的最新研究成果。他需要带一些研究材料,但是他的行李箱空间有限。这些研究材料包括实验设备、文献资料和实验样本等等,它们各自占据不同的空间࿰…...
 
MySQL的基本操作(超详细)
👨💻作者简介:👨🏻🎓告别,今天 📔高质量专栏 :☕java趣味之旅 📔(零基础)专栏:MSQL数据库 欢迎🙏点赞&…...
 
自动驾驶之心规划控制笔记
Search-based Path Planning Methods Path Finding Problem 一般来说指标有距离,耗费时间,能量,或者多目标。 左图是拓扑地图,蓝色的点就是顶点,绿色的线是连接关系。最后得到的是一个从哪里走的一个最优,并非精细解。 右图是栅格地图,这个搜索出来的是在相对分辨率比…...
Linux中部署Java jar 包 shell 脚本
Linux中部署Java jar 包 shell 脚本 #!/bin/bash set -e# 基础 # export JAVA_HOME/work/programs/jdk/jdk1.8.0_181 # export PATHPATH$PATH:$JAVA_HOME/bin # export CLASSPATH$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarDATE$(date %Y%m%d%…...
 
auto.js v1.4.4 实现自动打卡
一、使用场景 所在公司的打卡软件可以单独变成一个可以点击的APP,所以只需要实现以下步骤: 自动解锁屏幕返回主屏幕并打卡锁定屏幕需要的环境: 手机端下载并且安装 auto.js v4.1.1 PC端VS安装对应的插件学习资料 B站学习资料 对应 第三期&am…...
 
【Linux实验室】NFS、DHCP的搭建
NFS、DHCP的搭建 1、nfs服务搭建及测试什么是NFS?环境准备服务端机器安装nfs-utils和rpcbind包启动NFS服务创建/data/NFSdata目录,配置nfs文件启动服务挂载测试在服务端在共享目录下创建文件测试在客户端在共享目录下创建文件 2、dhcp服务搭建及测试什么…...
 
Samba 总是需要输入网络凭证
输入网络凭证: 用户名是 cat /etc/samba/smb.conf,查看 valid users mxw 为用户名。而不是其他账号名或者用户名,更不是登录计算机时的计算机名; 密码是 需要记住安装samba服务器时,自己设置的password࿱…...
 
图像处理_积分图
目录 1. 积分图算法介绍 2. 基本原理 2.1 构建积分图 2.2 使用积分图 3. 举个例子 1. 积分图算法介绍 积分图算法是图像处理中的经典算法之一,由Crow在1984年首次提出,它是为了在多尺度透视投影中提高渲染速度。 积分图算法是一种快速计算图像区域和…...
 
B/S架构SaaS模式 医院云HIS系统源码,自主研发,支持电子病历4级
B/S架构SaaS模式 医院云HIS系统源码,自主研发,支持电子病历4级 系统概述: 一款满足基层医院各类业务需要的云HIS系统。该系统能帮助基层医院完成日常各类业务,提供病患挂号支持、病患问诊、电子病历、开药发药、会员管理、统计查…...
(C)1005 继续(3n+1)猜想
1005 继续(3n1)猜想: 问题描述 卡拉兹(Callatz)猜想已经在1001中给出了描述。在这个题目里,情况稍微有些复杂。 当我们验证卡拉兹猜想的时候,为了避免重复计算,可以记录下递推过程中遇到的每一个数。例如对 n3 进行验证的时候&a…...
 
编译好的C++应用程序拷贝到其它电脑,提示dll未找到依赖项的解决方法。
编译好的C应用程序拷贝到其它电脑上,运行时出现提示dll未找到依赖项。 由于dll依赖于其它dll,在开发用电脑上的环境不能完全与其它电脑相同。 解决办法是找到调用到的dll依赖的所有dll,拷贝到运行目录下。 在开发电脑上: 1、开…...
【AI学习】三、AI算法中的向量
在人工智能(AI)算法中,向量(Vector)是一种将现实世界中的数据(如图像、文本、音频等)转化为计算机可处理的数值型特征表示的工具。它是连接人类认知(如语义、视觉特征)与…...
 
零基础设计模式——行为型模式 - 责任链模式
第四部分:行为型模式 - 责任链模式 (Chain of Responsibility Pattern) 欢迎来到行为型模式的学习!行为型模式关注对象之间的职责分配、算法封装和对象间的交互。我们将学习的第一个行为型模式是责任链模式。 核心思想:使多个对象都有机会处…...
JVM暂停(Stop-The-World,STW)的原因分类及对应排查方案
JVM暂停(Stop-The-World,STW)的完整原因分类及对应排查方案,结合JVM运行机制和常见故障场景整理而成: 一、GC相关暂停 1. 安全点(Safepoint)阻塞 现象:JVM暂停但无GC日志,日志显示No GCs detected。原因:JVM等待所有线程进入安全点(如…...
 
【开发技术】.Net使用FFmpeg视频特定帧上绘制内容
目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法,当前调用一个医疗行业的AI识别算法后返回…...
 
智能分布式爬虫的数据处理流水线优化:基于深度强化学习的数据质量控制
在数字化浪潮席卷全球的今天,数据已成为企业和研究机构的核心资产。智能分布式爬虫作为高效的数据采集工具,在大规模数据获取中发挥着关键作用。然而,传统的数据处理流水线在面对复杂多变的网络环境和海量异构数据时,常出现数据质…...
重启Eureka集群中的节点,对已经注册的服务有什么影响
先看答案,如果正确地操作,重启Eureka集群中的节点,对已经注册的服务影响非常小,甚至可以做到无感知。 但如果操作不当,可能会引发短暂的服务发现问题。 下面我们从Eureka的核心工作原理来详细分析这个问题。 Eureka的…...
【Go语言基础【13】】函数、闭包、方法
文章目录 零、概述一、函数基础1、函数基础概念2、参数传递机制3、返回值特性3.1. 多返回值3.2. 命名返回值3.3. 错误处理 二、函数类型与高阶函数1. 函数类型定义2. 高阶函数(函数作为参数、返回值) 三、匿名函数与闭包1. 匿名函数(Lambda函…...
AGain DB和倍数增益的关系
我在设置一款索尼CMOS芯片时,Again增益0db变化为6DB,画面的变化只有2倍DN的增益,比如10变为20。 这与dB和线性增益的关系以及传感器处理流程有关。以下是具体原因分析: 1. dB与线性增益的换算关系 6dB对应的理论线性增益应为&…...
QT3D学习笔记——圆台、圆锥
类名作用Qt3DWindow3D渲染窗口容器QEntity场景中的实体(对象或容器)QCamera控制观察视角QPointLight点光源QConeMesh圆锥几何网格QTransform控制实体的位置/旋转/缩放QPhongMaterialPhong光照材质(定义颜色、反光等)QFirstPersonC…...
站群服务器的应用场景都有哪些?
站群服务器主要是为了多个网站的托管和管理所设计的,可以通过集中管理和高效资源的分配,来支持多个独立的网站同时运行,让每一个网站都可以分配到独立的IP地址,避免出现IP关联的风险,用户还可以通过控制面板进行管理功…...
