信道编码理论【信息论安全】

目录

一. 信道编码模型

二. 信道编码速率与错误译码率

2.1 信道编码速率

2.2 平均错误率

三. 信道容量

四. 小结


一. 信道编码模型

(1)消息

假定消息集合为M,如下:

M=[1,2^{nR}]

(2)编码

将消息m映射成码字x^n,该码字的长度为n,可以通过编码函数实现,如下:

f:M\to X^n

(3)译码

信道的输出长度与输入长度相等,均为n。将输出的y^n可以译码成\hat m\in M,也可能译码错误为“?”。此过程可通过译码函数g实现,如下:

g:y^n\to M\cup \lbrace ?\rbrace

要求信道的传输过程为离散无记忆信道,如下:

DMC(X,p_{Y|X},Y)

以上过程即为信道编码(channel code)C_n,重要的参数包含(2^{nR},n)。形式化的完整定义如下:

二. 信道编码速率与错误译码率

2.1 信道编码速率

可以设计不同的编码函数,从而形成不同的码本(codebook),如下:

\lbrace f(m):m\in [1,2^{nR}]\rbrace

通常而言会假定消息空间M是均匀随机分布的,由此信道编码速率其实就是R。因为信道编码的目的是加冗余,在网络安全模型中,该R的值一般为小于1的数。当然,考虑到会有小数的情况出现,所以完整的信道编码速率为:

\frac{1}{n}log\lceil 2^{nR}\rceil

信道编码速率的单位是bit/channel use。

2.2 平均错误率

当译码的\hat M和编码的M不同时,则出现了错误译码。由此定义平均错误概率为:

其中C_n代表会公开所有编码和译码的理论依据,P_e代表错误概率。所以该概率写成了条件概率的形式。

三. 信道容量

信道可达的速率要求,当编码长度足够大时,错误译码的概率需要接近于0,也就是:

相当于当编码长度越来越大时,方案错误率越来越低,但是方案的效率也会越来越低。很明显,满足可达速率的方案有很多,那么最大的速率可以达到多少呢?

当速率达到最大值时,就出现了信道容量(channel capacity)的概念,如下:

其中sup代表可达的上界。

在无线通信中,信息论只依赖于给定的概率分布,因为求的是可达速率的上界,所以跟编码的长度n或k都没有关系。

如果某个编码方案可以实现信道容量的话,则被称之为direct result,相应的证明过程则被称之为achievability proof。

当有定义证明没有编码方案可以实现信道容量的话,则被称之为converse result,相应的证明过程则被称之为converse proof。

这就是所谓的编码定理。当年香农是这样总结的:

Notice that the formulation of the point-to-point communication problem does not put any constraints either on the computational complexity or on the delay of the encoding and decoding procedures. In other words, the goal is to describe the fundamental limits of communications systems irrespective of their technological limitations.

四. 小结

通信技术发展日新月异, 使我们的社会变成为一个万物互联的社会。目前已有超过 500 亿台通信连接设备,它们在医疗保健、自动驾驶、制造业、农业、航运和娱乐等行业中发挥着巨大的作用。预测2035 年全世界经济收益总产出实现 12.3 万亿美金, 2036 年, 通讯经营公司将会在全世界雇佣 2200 万务工人员。 5G 就是其中一个例子,它目前有三个不同的应用:

(1) eMBB-加强移动信号宽带;

(2) URLLC-超安全可靠的低延迟作用通讯;

(3) mMTC-大型机器种类通讯。

这三个使用都有不同的要求,从 eMBB 的高达 10Gbps 的速率到 URLLC 少于 10e-5 丢包,以及通过 mMTC 设想的超过500 亿个低功耗设备。

现代数字通信的核心之一是信道编码,或者也称为前向纠错( Forward Error Correction,FEC),根据未来通信系统的条件,信道编码还必须满足如高速率、超高可靠性以及低功耗等要求。信道编码领域自诞生之日起就对社会产生了深远影响。在 70 年代末, Ungerboeck 指出了协同调节控制和程序代码设计方案—格子程序代码调节控制(Trellis-Coded Modulation) 。这个方案能够将普通电话线上的调制解调器的吞吐量从 23kbps 提高到 45kbps。

Arikan 在 2009 年第一次提出了极化码, 而且在理论上充分证实了极化码在二进制输入对称离散无记忆信道下,就能够“实现”香农容量, 这对于我们实现大容量通信传输的信道编解码技术有重要意义,并且极化码的编译码算法都具备较低的复杂度, 性能在特定码长下也非常优秀。然而在实际的应用中,传输信道的状态在变化,为了适应这种变化,我们就需要对极化码的码长、码率等参数进行灵活调整。

第五代移动通信对通信传输的高品质要求,决定了其对于高速率、高可靠、低时延的译码器的需求。对于极化码, 即使传统类型的译码算法及改善过的算法都具备了非常好的译码性能, 例如 SC 译码算法及其改进译码算法, 然而在译码时延上受制于译码算法本身, 需要在低时延上继续获得突破。

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

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

相关文章

[VisualStudioCode]_[VSCODE]_[C/C++开发环境配置-问题解决和补充]

场景 在使用VSCode配置C的开发环境时《VisualStudioCode_C/C开发环境配置[1]》,编译时会发现找不到标准库的std::mutex和std::thread的声明,而这两个的头文件已经引入,什么情况? 无论如何MinGW都是Windows上验证开发C特性比较新的…

11Spring IoC注解式开发(上)(元注解/声明Bean的注解/注解的使用/负责实例化Bean的注解)

注解的存在主要是为了简化XML的配置。Spring6倡导全注解开发。 注解开发的优点:提高开发效率 注解开发的缺点:在一定程度上违背了OCP原则,使用注解的开发的前提是需求比较固定,变动较小。 1 注解的注解称为元注解 自定义一个注解: package com.sunspl…

计算机毕业设计---SSH协会志愿者服务管理系统

项目介绍 该项目分为前后台,分为管理员与普通用户两种角色,前台为普通用户登录,后台为管理员登录; 管理员角色包含以下功能: 管理员登录,管理员管理,志愿者管理,活动管理,捐赠管理,关于我们管理,友情链接管理,新闻类…

微服务-Gateway

案例搭建 官网地址 父Pom <com.alibaba.cloud.version>2.2.8.RELEASE</com.alibaba.cloud.version> <com.cloud.version>Hoxton.SR12</com.cloud.version> <com.dubbo.version>2.2.7.RELEASE</com.dubbo.version> <dependencyManagem…

阿里云独享型通用算力u1云服务器怎么样?通用算力型u1实例有什么优势?

在阿里云2024年的活动中&#xff0c;独享型通用算力u1云服务器是用户比较关注的云服务器&#xff0c;因为它的性能要比活动内的经济型e实例好&#xff0c;但是价格又比计算型c7、通用型g7等其他企业级实例的价格要便宜。那么&#xff0c;独享型通用算力u1云服务器到底怎么样呢&…

AirServer2024免费手机电脑高清投屏软件

AirServer 是适用于 Mac 和 PC 的先进的屏幕镜像接收器。 它允许您接收 AirPlay 和 Google Cast 流&#xff0c;类似于 Apple TV 或 Chromecast 设备。AirServer 可以将一个简单的大屏幕或投影仪变成一个通用的屏幕镜像接收器 &#xff0c;是一款十分强大的投屏软件。 它能够通…

哪种小型洗衣机好用?高性价比的小型洗衣机推荐

大型洗衣机作为家居必备小家电&#xff0c;对生活品质的提升十分显著&#xff0c;在很多人的认知中&#xff0c;这种大型洗衣机主要是用来清洁大件的衣服和外套的&#xff0c;不方便将内衣裤都放入到里面&#xff0c;内衣裤的材质和尺寸都是比较特殊&#xff0c;若是直接将其放…

当心这46个重要漏洞!微软发布1月补丁日安全通告

近日&#xff0c;亚信安全CERT监测到微软1月补丁日发布了针对48个漏洞的修复补丁&#xff0c;其中&#xff0c;2个漏洞被评为紧急&#xff0c;46个漏洞被评为重要&#xff0c;共包含10个权限提升漏洞&#xff0c;11个远程代码执行漏洞&#xff0c;3个欺骗漏洞&#xff0c;11个信…

vue 登陆禁止弹出保存密码框及禁止默认填充密码

οnfοcus“this.removeAttribute(‘readonly’);” readonly 初始化为只读&#xff0c;当聚焦时去掉只读属性&#xff0c;只读可以防止浏览器自动填充。 -webkit-text-security&#xff1a;指定要使用的形状来代替文字的显示 none 无。 circle 圆圈。 disc 圆形。 square 正方…

【数据库原理】(21)查询处理过程

关系型数据库系统的查询处理流程是数据库性能的关键&#xff0c;该流程涉及到将用户的查询请求转化成有效的数据检索操作。通常可以分为四个阶段:查询分析、查询处理、查询优化和查询执行&#xff0c;如图所示。 第一步&#xff1a;查询分析 这个阶段是整个查询处理的起点。数…

RT-DETR 更换主干网络之 ShuffleNetv2 | 《ShuffleNet v2:高效卷积神经网络架构设计的实用指南》

目前,神经网络架构设计多以计算复杂度的间接度量——FLOPs为指导。然而,直接的度量,如速度,也取决于其他因素,如内存访问成本和平台特性。因此,这项工作建议评估目标平台上的直接度量,而不仅仅是考虑失败。在一系列控制实验的基础上,本文得出了一些有效设计网络的实用指…

Axure rp 是什么软件?大厂设计师为你解答

Axure rp 是一个快速的原型设计工具&#xff0c;可以制作高度互动的 HTML 原型。设计者不仅可以使用 Axure 绘制线框图和原型&#xff0c;还可以在 Axure rp 中完成一系列的用户体验设计。本文将根据用户体验设计者的真实经验&#xff0c;从用户体验设计者的实际工作中触发 Axu…

C语言用函数指针实现计算器

一、运行结果&#xff1b; 二、源代码&#xff1b; # define _CRT_SECURE_NO_WARNINGS # include <stdio.h>//实现目录函数&#xff1b; void menum() {//打印目录&#xff1b;printf("***********************************************\n");printf("***…

当使用WSL下载运行Docker可视化界面的镜像,使用报错

Traceback (most recent call last): File “app.py”, line 345, in root tk.Tk() File “/usr/lib/python3.8/tkinter/init.py”, line 2270, in init self.tk _tkinter.create(screenName, baseName, className, interactive, wantobjects, useTk, sync, use) _tkinter.T…

Python - 深夜数据结构与算法之 Heuristic Search

目录 一.引言 二.启发式搜索简介 1.BFS 广度优先 2.A* Search 3.估价函数 三.经典算法实战 1.Binary-Shortest-Path [1091] 2.Sliding-Puzzle [773] 四.总结 一.引言 Heuristic Search 启发式搜索&#xff0c;又名 A* 搜索&#xff0c;其不基于广度、也不基于深度而是…

Retrieval-Augmented Generation for Large Language Models: A Survey

PS: 梳理该 Survey 的整体框架&#xff0c;后续补充相关参考文献的解析整理。本文的会从两个角度来分析总结&#xff0c;因此对于同一种技术可能在不同章节下都会有提及。第一个角度是从整体框架的迭代来看&#xff08;对应RAG框架章节&#xff09;&#xff0c;第二个是从RAG中…

Tensorflow Lite从入门到精通

TensorFlow Lite 是 TensorFlow 在移动和 IoT 等边缘设备端的解决方案&#xff0c;提供了 Java、Python 和 C API 库&#xff0c;可以运行在 Android、iOS 和 Raspberry Pi 等设备上。目前 TFLite 只提供了推理功能&#xff0c;在服务器端进行训练后&#xff0c;经过如下简单处…

【开源】基于JAVA+Vue+SpringBoot的超市账单管理系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块三、系统设计3.1 总体设计3.2 前端设计3.3 后端设计在这里插入图片描述 四、系统展示五、核心代码5.1 查询供应商5.2 查询商品5.3 新增超市账单5.4 编辑超市账单5.5 查询超市账单 六、免责说明 一、摘要 1.1 项目介绍 基于…

使用pygame.draw绘制基本图形

import pygame# 初始化pygame pygame.init()# 创建显示窗口 screen pygame.display.set_mode((640, 480)) pygame.display.set_caption("绘制基本图形")# 定义颜色 BLACK (0, 0, 0) WHITE (255, 255, 255) RED (255, 0, 0) GREEN (0, 255, 0) BLUE (0, 0, 255)…

用java实现Client和Server之间的互相通信

概要&#xff1a;看过我之前文章的人都知道&#xff0c;client和server之间的通信必不可少的就是socket。而java已经帮我们做了很多事情。 创建Server端 第一步&#xff0c;创建ServerSocket 这个从名字上就可以看出来&#xff0c;服务器上的socket 0.0 ServerSocket ser…