当前位置:文档之家› 正式实验报告二—信道容量的计算

正式实验报告二—信道容量的计算

正式实验报告二—信道容量的计算
正式实验报告二—信道容量的计算

一、实验目的

1.掌握离散信道的信道容量的计算方法;

2.理解不同类型信道的不同特点与不同的计算方法;

二、实验内容

1.进一步熟悉一般离散信道的信道容量计算方法;

2.进一步复习巩信道性质与实际应用;

3.学习如何将复杂的公式转化为程序。

三、实验仪器、设备

1、计算机-系统最低配置256M内存、P4 CPU;

2、MATLAB编程软件。

四、实现原理

信道容量是信息传输率的极限,当信息传输率小于信道容量时,通过信道编码,能够实现几乎无失真的数据传输;当数据分布满足最佳分布时,实现信源与信道的匹配,使得信息传输率能够达到信道容量。本实验利用信道容量的算法,使用计算机完成信道容量的计算。

实验采用迭代算法计算信道容量,即:设DMC的转移概率pyx(i,j),p(i)是任意给定的一组初始给定输入分布,开始为等概率分布,以后逐次迭代更新p(i)的取值。其所有分量P (i)均不为0。按照如下方法进行操作:

具体方法:

1、计算q(j)=

i

j

i

pyx

i

p)

,(

*)(,pyx(i,j)为信道转移概率

2、计算a(i)

先算中间变量d(i)=∑

j

j

q

j

i

pyx

j

i

pyx)

(

/)

,(

log(

*)

,(

然后,a(i)=exp(d(i))

3、计算中间变量U=∑

i

i

p i

a)(

*)(

4、计算IL=log2(u)

5、计算IU=log2(max(a(i))

6、当IU-IL>ε(ε为设定的迭代精度)时,进入以下循环,否则输出迭代次数n,信道容量C=IU计算结果,最佳分布p(i)。

①重新计算p(i)=p(i)*a(i)/U

②计算q(j),方法同1

③计算a(i),方法同2

④计算中间变量U=∑

i

i

p i

a)(

*)(

⑤计算IL=log2(u)

⑥计算IU=log2(max(a(i))

⑦计次变量n=n+1

返回6判断循环条件是否满足。

五、实验步骤

1、计算非对称信道的信道容量

运行程序

待程序运行完毕,记录迭代次数n和信道容量计算结果C。

2、计算对称信道的信道容量

运行程序

待程序运行完毕,记录迭代次数n和信道容量计算结果C。

六、实验报告要求

1、根据格式要求撰写实验报告;

2、附录完整的程序代码;

3、总结实验心得。

七、思考题

1、考虑当信道转移矩阵为非方阵时,影响信道容量的因素有那些?

2、迭代精度和迭代次数的关系?

信道容量的计算

§4.2信道容量的计算 这里,我们介绍一般离散信道的信道容量计算方法,根据信道容量的定义,就是在固定信道的条件下,对所有可能的输入概率分布)(x P 求平均互信息的极大值。前面已知()Y X I ;是输入概率分布的上凸函数,所以极大值一定存在。而);(Y X I 是r 个变量 )}(),(),({21r x p x p x p 的多元函数。并且满足1)(1 =∑=r i i x p 。所以可用拉格朗日乘子法来 计算这个条件极值。引入一个函数:∑-=i i x p Y X I )();(λ φ解方程组 0) (] )();([) (=∑?-???i i i i x p x p Y X I x p λ φ 1)(=∑i i x p (4.2.1) 可以先解出达到极值的概率分布和拉格朗日乘子λ的值,然后在解出信道容量C 。因为 ) () (log )()();(11 i i i i i r i s j i y p x y Q x y Q x p Y X I ∑∑=== 而)()()(1 i i r i i i x y Q x p y p ∑== ,所以 e e y p y p i i i i i y p x y Q i x p i x p l o g l o g ))(ln ()(log ) ()()() (==????。 解(4.2.1)式有 0log )()()()()()(log )(111=--∑∑∑===λe y p x y Q x y Q x p y p x y Q x y Q i i i i i r i s j i i i i s j i i (对r i ,,2,1 =都成立) 又因为 )()()(1j k k r k k y p x y Q x p =∑= r i x y Q s j i j ,,2,1,1)(1 ==∑= 所以(4.2.1)式方程组可以转化为 ),,2,1(log ) ()(log )(1r i e y p x y Q x y Q j i j s j i j =+=∑=λ 1)(1 =∑=r i i x p

计算网络A - 实验报告()

《计算网络》实验报告 学院______计算机学院______专业_______软件工程_______ 年级班别______13(4)班_______ 学号_____3113006393_______学生姓名________朱育楷________ 指导教师____ 梁路 _______ 成绩

广东工业大学 计算机学院软件工程专业13(4)班学号3113006393 姓名__朱育楷___协作者_____无______ 教师评定_______________ 实验题目一. Windows下常用的网络命令 一、实验目的 学习在Windows系统中进行网络配置、用ping ipconfig/winipcfg命令工具来进行网络测试、使用tracert路由跟踪命令、使用netstat、arp、nslookup命令查看网络状态。 本实验在于使学生更好地理解计算机网络设置的基本操作,掌握计算机网络配置的基本监测技术。 二、实验内容和要求 1、使用Ping工具测试本机TCP/IP协议的工作情况,记录下相关信息。 2、使用IPconfig工具测试本机TCP/IP网络配置,记录下相关信息。 3、使用netsh工具测试本机TCP/IP网络配置,记录下相关信息。 4、使用Tracert工具测试本机到https://www.doczj.com/doc/1318321322.html, 所经过的路由数,记录下 相关信息。 5、使用Netstat工具,记录下相关信息。 6、使用Arp工具,记录下相关信息。 7、使用Nslookup工具,记录下相关信息。 二、实验结果 1、使用Ping工具测试本机TCP/IP协议的工作情况,记录下相关信息。

2、使用IPconfig工具测试本机TCP/IP网络配置,记录下相关信息。

实验三 信道容量计算

实验三信道容量计算 一、实验目的: 了解对称信道与非对称信道容量的计算方法。 二、实验原理: 信道容量是信息传输率的极限,当信息传输率小于信道容量时,通过信道编码,能够实现几乎无失真的数据传输;当数据分布满足最佳分布时,实现信源与信道的匹配,使得信息传输率能够达到信道容量。本实验利用信道容量的算法,使用计算机完成信道容量的计算。 实验采用迭代算法计算信道容量,即:设DMC的转移概率pyx(i,j),p(i)是任意给定的一组初始给定输入分布,开始为等概率分布,以后逐次迭代更新p(i)的取值。其所有分量P (i)均不为0。按照如下方法进行操作: 具体方法: 1、计算q(j)=∑ i j i pyx i p) ,( *)(,pyx(i,j)为信道转移概率 2、计算a(i) 先算中间变量d(i)=∑ j j q j i pyx j i pyx) ( /) ,( log( *) ,( 然后,a(i)=exp(d(i)) 3、计算中间变量U=∑ i i p i a)( *)( 4、计算IL=log2(u) 5、计算IU=log2(max(a(i)) 6、当IU-IL>ε(ε为设定的迭代精度)时,进入以下循环,否则输出迭代次数n,信道容量C=IU计算结果,最佳分布p(i)。 ①重新计算p(i)=p(i)*a(i)/U ②计算q(j),方法同1 ③计算a(i),方法同2 ④计算中间变量U=∑ i i p i a)( *)( ⑤计算IL=log2(u) ⑥计算IU=log2(max(a(i)) ⑦计次变量n=n+1

返回6判断循环条件是否满足。 四、实验内容: 假设离散无记忆二元信道如图所示,编程,完成下列信道容量的计算 2e 1. 令120.1e e p p ==和120.01e e p p ==,先计算出信道转移矩阵,分别计算该对称信道的信道容量和最佳分布,将用程序计算的结果与用对称信道容量计算公式的结果进行比较,并贴到实验报告上。 2. 令10.15e p =,20.1e p =和10.075e p =20.01e p =,分别计算该信道的信道容量和最佳分布; 四、实验要求: 在实验报告中给出源代码,写出信道对应的条件转移矩阵,计算出相应结果。并定性讨论信道容量与信道参数之间的关系。

寻呼空口信道容量及信道容量计算

寻呼空口信道容量及FACH 信道 容量计算方法

目录 1寻呼容量计算方法 (2) 1.1现网理论容量计算 (2) 1.2实际网络环境下的容量计算 (3) 2寻呼容量扩容方案 (3) 2.1寻呼拥塞产生的原因 (3) 2.2寻呼容量预警机制 (4) 2.3现网容量评估 (4) 2.4空口寻呼扩容方案 (5) 2.4.1方案原理 (5) 2.4.2目标容量 (6) 3FACH信道容量评估 (7)

1寻呼容量计算方法 首先需要明确寻呼容量的单位是个/时间/小区,也就是说衡量一个RNC支持多大的寻呼量是以小区为标准的,比如某RNC支持的寻呼容量应为XX个/小时/小区或者XX个/秒/小区。 RNC设备支持的理论寻呼量为45万TMSI/小时/小区,实际每小区支持的寻呼容量则取决于空口的寻呼容量配置。 空口寻呼容量配置计算方法如下(以小区为参考单位): PCH寻呼能力计算公式为:Ntfs×RoundDown[(TBSize-7)/Lue]×Npch/(Nr×Tpbp) IMSI寻呼时, Ntfs×RoundDown[(TBSize-7)/72]×Npch/(Nr×Tpbp) TMSI/PTMSI寻呼时,Ntfs×RoundDown[(TBSize-7)/40]×Npch/(Nr×T pbp) 注:RoundDown为向下取整。 如果空口环境不好,存在大量重传的时候,则上面的公式需要再除以(1+Nr),寻呼容量减半,通常情况下不考虑重传。 1.1现网理论容量计算 除西安网络进行寻呼信道扩容外,现网目前各项空口寻呼信道参数配置如下表: 协议参数说明备注现网配置 Ntfs PCH传输格式中 240bit块的个数(一 个寻呼子信道承载) 传输块个数 一般配置为0、1。Ntf与PCH所在 的SCCPCH的码道数目相关。 1 Tbsize PCH传输块大小240 Npch 每个寻呼块配置的寻 呼子信道数目 协议规定Npch<=8 8 Nr 重复因子相同寻呼的重发次数 1 Tpbp PICH的寻呼周期重复周期/ Tpbp 640ms/320ms 640

计算机网络实验报告3

计算机网络实验报告3 报告课程名称计算机网络实验项目实验三 传输控制协议TCP 实验仪器网络协议仿真教学系统系别计算机学院专业班级/学号学生姓名实验日期成绩 _______________________ 指导教师实验报告课程名称计算机网络实验项目实验三 传输控制协议TCP 实验仪器网络协议仿真教学系统系别计算机系专业班级/学号学生姓名实验日期成绩 _______________________ 指导教师高卓实验三 传输控制协议TCP 一、实验目的: 1、掌握TCP协议的报文格式 2、掌握TCP连接的建立和释放过程 3、掌握TCP数据传输中编号与确认的过程 4、掌握TCP协议校验和的计算方法 5、理解TCP重传机制 二、实验原理:一、 TCP报文格式16位源端口号16位目的端口号32位序号32位确认序号4位首部长度保留(6位)URGACKPSHRSTSYNFIN16位窗口大小16位校验和16位紧急指针选项数据二、 TCP连接的建立TCP是面向连接的协议。

在面向连接的环境中,开始传输数据之前,在两个终端之间必须先建立一个连接。对于一个要建立的连接,通信双方必须用彼此的初始化序列号seq和来自对方成功传输确认的应答号ack (指明希望收到的下一个八位组的编号)来同步,习惯上将同步信号写为SYN,应答信号写为ACK。整个同步的过程称为三次握手,如图: 3、 TCP连接的释放对于一个已经建立的连接,TCP使用四次握手来结束通话(使用一个带有FIN附加标记的报文段)。 如图:四、 TCP重传机制TCP每发送一个报文段,就对这个报文段设置一次计时器。只要计时器设置的重传时间到期,但还没有收到确认,就要重传这一报文段。 三、实验环境配置:该实验采用网络结构图。说明:IP地址分配规则为主机使用原有IP,保证所有主机在同一网段内。 四、实验内容:按照拓扑结构图连接网络,使用拓扑验证检查连接的正确性。练习一:察看TCP连接的建立和释放 1、主机 B、 C、D启动协议分析器进行数据捕获,并设置过滤条件(提取TCP协议)。 2、主机C打开TCP工具,类型选择“服务器”,端口填写大于1024的值;点击“创建”,如果端口被占用则选择其它。主机A打开TCP工具,类型选择“客户端”,地址填入主机C的IP地

实验二 离散信道及其容量

实验二离散信道及其容量 一、[实验目的] 1、理解离散信道容量的内涵; 2、掌握求二元对称信道(BSC)互信息量和容量的设计方法; 3、掌握二元扩展信道的设计方法并会求其平均互信息量。 二、[实验环境] windows XP,MATLAB 7 三、[实验原理] 若某信道输入的是N 维序列x ,其概率分布为q(x ),输出是N 维序列y ,则平均互信息量记为I(X ;Y ),该信道的信道容量C 定义为() max (X;Y)q x C I =。四、[实验内容] 1、给定BSC 信道,信源概率空间为 信道矩阵0.990.010.010.99P ??=???? 求该信道的I(X;Y)和容量,画出I(X;Y)和ω、C 和p 的关系曲线。 2、编写一M 脚本文件t03.m,实现如下功能: 在任意输入一信道矩阵P 后,能够判断是否离散输出对称信道。 3、对题1求其二次扩展信道的平均互信息I(X;Y)。 五、[实验过程] 每个实验项目包括: 1)设计思路 1、信道容量 ()max (X;Y)q x C I =,因此要求给定信道的信道容量,只要知道该信道的最大互信息量,即求信道容量就是求信道互信息量的过程。 程序代码: clear all,clc; w=0.6; w1=1-w; p=0.01;X P 0 10.60.4 =

p1=1-p; save data1p p1; I_XY=(w*p1+w1*p)*log2(1/(w*p1+w1*p))+(w*p+w1*p1)*log2(1/(w*p+w1*p1))-... (p*log2(1/p)+p1*log2(1/p1)); C=1-(p*log2(1/p)+p1*log2(1/p1)); fprintf('互信息量:%6.3f\n信道容量:%6.3f',I_XY,C); p=eps:0.001:1-eps; p1=1-p; C=1-(p.*log2(1./p)+p1.*log2(1./p1)); subplot(1,2,1),plot(p,C),xlabel('p'),ylabel('C'); load data1; w=eps:0.001:1-eps; w1=1-w; I_XY=(w.*p1+w1.*p).*log2(1./(w.*p1+w1.*p))+(w.*p+w1.*p1).*log2(1./(w.*p+w1.*p1))-.. .(p.*log2(1./p)+p1.*log2(1./p1)); subplot(1,2,2),plot(w,I_XY) xlabel('w'),ylabel('I_XY'); 实验结果: 互信息量:0.891 信道容量:0.919 I(X;Y)和ω、C和p的关系曲线图: C X 2、离散对称信道:当离散准对称信道划分的子集只有一个时,信道关于输入和输出对称。 离散准对称信道:若一个离散无记忆信道的信道矩阵中,按照信道的输出集Y 可以将信道划分成n个子集,每个子矩阵中的每一行都是其他行同一组元素的不同排列。

信道容量实验报告

湖南大学 信息科学与工程学院 实验报告 实验名称信道容量的迭代算法课程名称信息论与编码 第1页共9页

1.实验目的 (1)进一步熟悉信道容量的迭代算法; (2)学习如何将复杂的公式转化为程序; (3)掌握C 语言数值计算程序的设计和调试技术。 2、实验方法 硬件:pc 机 开发平台:visual c++软件 编程语言:c 语言 3、实验要求 (1)已知:信源符号个数r 、信宿符号个数s 、信道转移概率矩阵P 。 (2)输入:任意的一个信道转移概率矩阵。信源符号个数、信宿符号个数和每 个具体的转移概率在运行时从键盘输入。 (3)输出:最佳信源分布P*,信道容量C 。 4.算法分析 1:procedure CHANNEL CAPACITY(r,s,(ji p )) 2:initialize:信源分布i p =1/r ,相对误差门限σ,C=—∞ 3:repeat 4: 5: 6: C 221 1 log [exp(log )] r s ji ij r j p φ==∑∑ 7:until C C σ ?≤ 8:output P*= ()i r p ,C 9:end procedure 21 21 1 exp(log ) exp(log ) s ji ij j r s ji ij r j p p φφ===∑∑∑i p 1 i ji r i ji i p p p p =∑ij φ

5.程序调试 1、头文件引入出错 f:\visualc++\channel\cpp1.cpp(4) : fatal error C1083: Cannot open include file: 'unistd.h': No such file or directory ————#include 纠错://#include f:\visualc++\channel\cpp1.cpp(5) : fatal error C1083: Cannot open include file: 'values.h': No such file or directory ————#include 纠错://#include 2、变量赋值错误 f:\visualc++\channel\cpp1.cpp(17) : error C2065: 'ij' : undeclared identifier f:\visualc++\channel\cpp1.cpp(17) : error C2440: 'initializing' : cannot convert from 'int' to 'float ** ' Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast ————float **phi_ij=ij=NULL; 纠错:float **phi_ij=NULL; 3、常量定义错误 f:\visualc++\channel\cpp1.cpp(40) : error C2143: syntax error : missing ';' before 'for' ————for(i=0;iDELTA) f:\visualc++\channel\Cpp1.cpp(84) : error C2021: expected exponent value, not ' ' ————if(fabs(p_j)>=DELTA) f:\visualc++\channel\Cpp1.cpp(100) : error C2021: expected exponent value, not ' ' ————if(fabs(phi_ij[i][j])>=DELTA) f:\visualc++\channel\Cpp1.cpp(116) : error C2021: expected exponent value, not ' ' ————while(fabs(C-C_pre)/C>DELTA); 纠错:#define DELTA 0.000001; F:\visualc++\channel\Cpp1.cpp(68) : error C2065: 'MAXFLOAT' : undeclared identifier F:\visualc++\channel\Cpp1.cpp(68) : warning C4244: '=' : conversion from 'int' to 'float', possible loss of data ————C=-MAXFLOAT; 纠错:#define MAXFLOAT 1000000; 3、引用中文逗号 f:\visualc++\channel\cpp1.cpp(60) : error C2018: unknown character '0xa1' f:\visualc++\channel\cpp1.cpp(60) : error C2018: unknown character '0xb1' f:\visualc++\channel\cpp1.cpp(60) : error C2065: 'Starting' : undeclared identifier f:\visualc++\channel\cpp1.cpp(60) : error C2059: syntax error : '.'

计算机网络实验报告3

课程名称计算机网络 实验项目实验三传输控制协议TCP 实验仪器网络协议仿真教学系统 系别计算机学院 专业 班级/学号 学生姓名 实验日期 成绩_______________________ 指导教师

课程名称计算机网络 实验项目实验三传输控制协议TCP 实验仪器网络协议仿真教学系统 系别计算机系 专业 班级/学号 学生姓名 实验日期 成绩_______________________ 指导教师高卓

实验三 传输控制协议TCP 一、实验目的: 1. 掌握TCP 协议的报文格式 2. 掌握TCP 连接的建立和释放过程 3. 掌握TCP 数据传输中编号与确认的过程 4. 掌握TCP 协议校验和的计算方法 5. 理解TCP 重传机制 二、实验原理: 一. TCP 报文格式 16位源端口号 16位目的端口号 32位序号 32位确认序号 4位首部长度 保留(6位) U R G A C K P S H R S T S Y N F I N 16位窗口大小 16位校验和 16位紧急指针 选项 数据 二. TCP 连接的建立 TCP 是面向连接的协议。 在面向连接的环境中,开始传输数据之前,在两个终端之间必须先建立一个连接。对于一个要建立的连接,通信双方必须用彼此的初始化序列号seq 和来自对方成功传输确认的应答号ack (指明希望收到的下一个八位组的编号)来同步,习惯上将同步信号写为SYN ,应答信号写为ACK 。 整个同步的过程称为三次握手,如图: 三. TCP 连接的释放 对于一个已经建立的连接,TCP 使用四次握手来结束通话(使用一个带有FIN 附

实验二 离散信道及其容量

实验二 离散信道及其容量 一、[实验目的] 1、理解离散信道容量的内涵; 2、掌握求二元对称信道(BSC )互信息量和容量的设计方法; 3、掌握二元扩展信道的设计方法并会求其平均互信息量。 二、[实验环境] windows XP,MATLAB 7 三、[实验原理] 若某信道输入的是N 维序列x ,其概率分布为q(x ),输出是N 维序列y ,则平均互信息量记为I(X ;Y ),该信道的信道容量C 定义为() max (X;Y)q x C I =。 四、[实验内容] 1、给定BSC 信道,信源概率空间为 信道矩阵 0.990.010.010.99P ??=???? 求该信道的I(X;Y)和容量,画出I(X;Y)和ω、C 和p 的关系曲线。 2 、编写一M 脚本文件t03.m ,实现如下功能: 在任意输入一信道矩阵P 后,能够判断是否离散对称信道,若是,求出信道容量C 。 3、已知X=(0,1,2);Y=(0,1,2,3),信源概率空间和信道矩阵分别为 求: 平均互信息量; 4、 对题(1)求其二次扩展信道的平均互信息I(X;Y)。 五、[实验过程 ] X P 0 1 0.6 0.4 = X Px 0 1 2 0.3 0.5 0.2 = 0.1 0.3 0 0.6 0.3 0.5 0.2 0 0.1 0.7 0.1 0.1 P=

每个实验项目包括:1)设计思路2)实验中出现的问题及解决方法; 1)设计思路 1、信道容量( ) max (X; Y) q x C = I ,因此要求给定信道的信道容量,只要知道该信道 的最大互信息量,即求信道容量就是求信道互信息量的过程。 程序代码: clear all,clc; w=0.6; w1=1-w; p=0.01; X P 01 = 0.6 0.4 p1=1-p; save data1 p p1; I_XY=(w*p1+w1*p)*log2(1/(w*p1+w1*p))+(w*p+w1*p1)*log2(1/(w*p+w1*p1))- ... (p*log2(1/p)+p1*log2(1/p1)); C=1-(p*log2(1/p)+p1*log2(1/p1)); fprintf('互信息量:%6.3f\n信道容量:%6.3f',I_XY,C); p=eps:0.001:1-eps; p1=1-p; C=1-(p.*log2(1./p)+p1.*log2(1./p1)); subplot(1,2,1),plot(p,C),xlabel('p'),ylabel('C'); load data1; w=eps:0.001:1-eps; w1=1-w; I_XY=(w.*p1+w1.*p).*log2(1./(w.*p1+w1.*p))+(w.*p+w1.*p1).*log2(1./(w.*p+w1.*p1))- . . .(p.*log2(1./p)+p1.*log2(1./p1)); subplot(1,2,2),plot(w,I_XY) xlabel('w'),ylabel('I_XY'); 实验结果:

正式实验报告二—信道容量的计算

一、实验目的 1.掌握离散信道的信道容量的计算方法; 2.理解不同类型信道的不同特点与不同的计算方法; 二、实验内容 1.进一步熟悉一般离散信道的信道容量计算方法; 2.进一步复习巩信道性质与实际应用; 3.学习如何将复杂的公式转化为程序。 三、实验仪器、设备 1、计算机-系统最低配置256M内存、P4 CPU; 2、MATLAB编程软件。 四、实现原理 信道容量是信息传输率的极限,当信息传输率小于信道容量时,通过信道编码,能够实现几乎无失真的数据传输;当数据分布满足最佳分布时,实现信源与信道的匹配,使得信息传输率能够达到信道容量。本实验利用信道容量的算法,使用计算机完成信道容量的计算。 实验采用迭代算法计算信道容量,即:设DMC的转移概率pyx(i,j),p(i)是任意给定的一组初始给定输入分布,开始为等概率分布,以后逐次迭代更新p(i)的取值。其所有分量P (i)均不为0。按照如下方法进行操作: 具体方法: 1、计算q(j)= i j i pyx i p) ,( *)(,pyx(i,j)为信道转移概率 2、计算a(i)

先算中间变量d(i)=∑ j j q j i pyx j i pyx) ( /) ,( log( *) ,( 然后,a(i)=exp(d(i)) 3、计算中间变量U=∑ i i p i a)( *)( 4、计算IL=log2(u) 5、计算IU=log2(max(a(i)) 6、当IU-IL>ε(ε为设定的迭代精度)时,进入以下循环,否则输出迭代次数n,信道容量C=IU计算结果,最佳分布p(i)。 ①重新计算p(i)=p(i)*a(i)/U ②计算q(j),方法同1 ③计算a(i),方法同2 ④计算中间变量U=∑ i i p i a)( *)( ⑤计算IL=log2(u) ⑥计算IU=log2(max(a(i)) ⑦计次变量n=n+1 返回6判断循环条件是否满足。 五、实验步骤 1、计算非对称信道的信道容量 运行程序

山东大学计算机网络-实验三

实验3 网际协议(IP) 【实验目的】 1.掌握IP数据报的报文格式 2.掌握IP校验和计算方法 3.掌握子网掩码和路由转发 4.理解特殊IP地址的含义 5.理解IP分片过程 6.理解协议栈对IP协议的处理方法 7.理解IP路由表作用以及IP路由表的管理 【实验步骤】 练习1 编辑并发送IP数据报 练习容: 各主机打开协议分析器,进入相应的网络结构并验证网络拓扑的正确性,如果通过拓扑验证,关闭协议分析器继续进行实验,如果没有通过拓扑验证,请检查网络连接。 本练习将主机A、B、C、D、E、F作为一组进行实验。 1. 主机B在命令行方式下输入staticroute_config命令,开启静态路由服务。 2. 主机A启动协议编辑器,编辑一个IP数据报,其中: MAC层: 目的MAC地址:主机B的MAC地址(对应于172.16.1.1接口的MAC)。 源MAC地址:主机A的MAC地址 协议类型或数据长度:0800。 IP层: 总长度:IP层长度。 生存时间:128。 源IP地址:主机A的IP地址(172.16.1.2)。 目的IP地址:主机E的IP地址(172.16.0.2)。 校验和:在其它所有字段填充完毕后计算并填充。 自定义字段: 数据:填入大于1字节的用户数据。 【说明】先使用协议编辑器的“手动计算”校验和,再使用协议编辑器的“自动计算”校验和,将两次计算结果相比较,若结果不一致,则重新计算。 ●IP在计算校验和时包括哪些容? 答:IP的首部校验和只检验数据报的首部,但不包括数据部分。 3. 在主机B(两块网卡分别打开两个捕获窗口)、E上启动协议分析器,设置过滤条件(提取IP协议),开始捕获数据。 4. 主机A发送第1步中编辑好的报文。 5. 主机B、E停止捕获数据,在捕获到的数据中查找主机A所发送的数据报,

信道容量及其一般计算方法

实验一信道容量及其一般计算方法 1.实验目的 一般离散信道容量的迭代运算 2.实验要求 (1)理解和掌握信道容量的概念和物理意义 (2)理解一般离散信道容量的迭代算法 (3)采用Matlab编程实现迭代算法 (4)认真填写实验报告。 3.源代码 clc;clear all; //清屏 N = input('输入信源符号X的个数N='); //输入行数 M = input('输出信源符号Y的个数M='); //输入列数 p_yx=zeros(N,M); //程序设计需要信道矩阵初始化为零 fprintf('输入信道矩阵概率\n') for i=1:N //从第一行第一列开始输入 for j=1:M p_yx(i,j)=input('p_yx='); //输入信道矩阵概率 if p_yx(i)<0 //若输出概率小于0则不符合概率分布 error('不符合概率分布') end end end for i=1:N //各行概率累加求和 s(i)=0; for j=1:M s(i)=s(i)+p_yx(i,j); end end for i=1:N //判断是否符合概率分布 if (s(i)<=0.999999||s(i)>=1.000001) //若行相加小于等于0.9999999或者大于等于1.000001 Error //('不符合概率分布') end end b=input('输入迭代精度:'); //输入迭代精度 for i=1:N p(i)=1.0/N; //取初始概率为均匀分布(每行值分别为1/N,)end for j=1:M //计算q(j) q(j)=0; for i=1:N q(j)=q(j)+p(i)*p_yx(i,j); //均匀分布的值乘上矩阵值后+q(j),然后赋值给q(j)实现求和

计算机网络实验三

实验三 IP协议分析 一、实验目的和要求 ?熟练掌握Ethereal的使用方法 ?能对捕获到的包进行较深入的分析 ?掌握IP层的作用以及IP地址的分类方法 ?掌握IP数据包的组成和网络层的基本功能。 二、实验内容 常见网络命令使用;启动Ethereal并设置相应的选项,进行一次简单的ICMP,观察捕获到的数据包, 过滤出IP数据包,分析每个IP分组的细节,查看IP数据包的结构与含义,观察IP协议的功能。 三、实验设备 PC机、Ethereal软件、WinpCap软件 四、背景知识 1、IP 地址的编址方法 IP Array地址是为 每个连接 在互联网 上的主机 分配的唯 一识别的 32 位标识 符。IP 地址的编址方法共经历了三个阶段: (1)分类的IP 地址 这是一种基于分类的两级IP 地址编址的方法。 表1 IP 地址的分类

如表1 所示,IP 地址分为A,B,C,D,E 五类,其中A、B、C 类地址为可分配主机地址,而D 类地址为组播地址,E 类地址保留以备将来的特殊使用。IP 地址采用点分十进制方式记录,每个地址表被视为4 个以点分隔开的十进制整数,每个整数对应一个字节。 A、B、C 三类地址由两部分组成:网络地址和主机地址,这三类地址的网络地址部分的长度不一样。每个A 类地址的网络中可以有 1600 万台主机;每个B 类地址的网络中可以有65534 台主机;每个C 类地址的网络中可以有254 台主机。这样对于一个共有几十台计算机的局域网来说即使分配一个C 类地址也是一种浪费。为此,提出了子网和子网掩码的概念。 (2)划分子网的IP 地址 子网就是将一个A 类、B 类或 C 类网络分割成许多小的网络,每一个小的网络就称为子网。划分子网采用“网络号”+“子网号”+“主机号”三级编址的方法。在划分了子网的网络地址中,子网掩码用于确定网络地址。 子网掩码是一个和IP 地址对应的 32 位二进制数。子网掩码中与IP 地址的网络地址对应的部分为 1,与主机地址对应的部分为0。这样把网络接口的IP 地址与该接口上的掩码相与就得到该接口所在网络的网络地址,而把该IP 地址与掩码的反码相与则可得到主机地址。 (3)无分类域间路由选择CIDR 无分类域间路由选择CIDR 是根据划分子网阶段的问题提出的编址方法。IP 地址采用“网络前缀”+“主机号”的编址方式。目前CIDR 是应用最广泛的编址方法,它消除了传统的A、B、C 类地址和划分子网的概念,提高了IP 地址资源的利用率,并使得路由聚合的实现成为可能。 2、IP 报文格式 IP 报文由报头和数据两部分组成,如图1 所示:

实验二 一般信道容量迭代算法

实验二 一般信道容量迭代算法 1. 实验目的 掌握一般离散信道的迭代运算方法。 2. 实验要求 1) 理解和掌握信道容量的概念和物理意义 2) 理解一般离散信道容量的迭代算法 3) 采用Matlab 编程实现迭代算法 4) 认真填写试验报告 3.算法步骤 ①初始化信源分布),,,,,(21)0(p p p p P r i ????=(一般初始化为均匀分布),置迭代计数器k=0,设信道容量相对误差门限为δ,δ>0,可设-∞=C )0(; ②∑= i k i ij k i ij k ji p p p p )()() (? s j r i ,??=??=,1;,,1 ③∑ ∑∑??????????????????????=+i k ji j ij k ji j ij k i p p p ?? )()() 1(ln exp ln exp r i ,,1??= ④?? ??????????????=∑∑+i k ji j ij k p C ?)()1(ln exp ln ⑤如果δ≤-++C C C k k k )1()()1(,转向⑦; ⑥置迭代序号k k →+1,转向②; ⑦输出p k i ) 1(+和C k )(1+的结果; ⑧停止。 4.代码P=input('转移概率矩阵P=') e=input('迭代精度e=') [r,s]=size(P); n=0; C=0; C_k=0; C_k1=0; X=ones(1,r)/r;

A=zeros(1,r); B=zeros(r,s);%初始化各变量 while(1) n=n+1; for i=1:r for j=1:s B(i,j)=log(P(i,j)/(X*P(:,j))+eps); if P(i,j)==0 B(i,j)=0; else end end A(1,i)=exp(P(i,:)*B(i,:)'); end C_k=log2(X*A'); C_k1=log2(max(A)); if (abs(C_0-C_1)

计算机网络实验三

辽宁工程技术大学上机实验报告 实验名称网际协议-1 院系软件学院专业软件工程班级 姓名学号日期2014-12-9 实验目的简述本次实验目的: 1.掌握IP数据报的报文格式。2.掌握IP校验和计算方法。 实验准备你为本次实验做了哪些准备: (1) 网际协议; (2) IP报文格式以及IP分片。 实验进度本次共有 2 个练习,完成 2 个。 成绩

实验内容【练习一】:编辑并发送IP数据报 1.主机A启动仿真编辑器,编辑一个IP数据报,其中: MAC层: 目的MAC地址:主机B的MAC地址(对应于172.16.1.1接口的MAC)。 源MAC地址:主机A的MAC地址。 协议类型或数据长度:0800。 IP层: 总长度:IP层长度。 生存时间:128。 源IP地址:主机A的IP地址(172.16.1.2)。 目的IP地址:主机E的IP地址(172.16.0.2)。 校验和:在其他所有字段填充完毕后计算并填充。 IP在计算校验和时包括那些内容? 答:IP报文中的首部。 【说明】先使用仿真编辑器的“手动计算”校验和,再使用仿真编辑器的“自动计算”校验和,将两次计算结果相比较,若结果不一致,则重新计算。 IP在计算校验和时包括哪些内容? 2.在主机B(两块网卡分别打开两个捕获窗口)、E上启动协议分析器,设置 过滤条件(提取IP协议),开始捕获数据。 3.主机A发送第1步中编辑好的报文。 4.主机B、E停止捕获数据,在捕获到的数据中查找主机A所发送的数据 报,并回答以下问题: 第1步中主机A所编辑的报文,经过主机B到达主机E后,报文数据是否发生变化?若发生变化,记录变化的字段,并简述发生变化的原因。 答:报文数据发生变化,生存时间和首部校验和变化了。 变化的字段:在主机B中,本机连接2对应的是路由,其IP地址为172.16.0.1。 “生存时间”的字段的值为128。“首部校验和”字段的值为0D78,而主机E 中,“生存时间”字段的值为127,“首部校验和”字段的值为0E78. 原因:主机B为路由器,数据包每经过一跳“生存时间”字段的值会减1,并重新计算校验和。

河北工业大学计算机网络实验五

实验(五):熟悉IP协议 实验说明:6个人一组 参考容:网络协议仿真教学系统(通用版)课件实验三网际协议IP 实验报告: 给出拓扑图(表明各主机的IP地址和MAC地址) 给出各个练习网卡捕获的数据(需要说明是哪一个练习) 练习一: 各主机打开协议分析器,进入相应的网络结构并验证网络拓扑的正确性,如果通过拓扑验证,关闭协议分析器继续进行实验,如果没有通过拓扑验证,请检查网络连接。 本练习将主机A、B、C、D、E、F作为一组进行实验。

1.主机B在命令行方式下输入staticroute_config命令,开启静态路由服务。 2.主机A启动协议编辑器,编辑一个IP数据报,其中: MAC层:目的MAC地址:主机B的MAC地址(对应于172.16.1.1接口的MAC)。 源MAC地址:主机A的MAC地址。 协议类型或数据长度:0800。 IP层: 总长度:IP层长度。 生存时间:128。 源IP地址:主机A的IP地址(172.16.1.2)。 目的IP地址:主机E的IP地址(172.16.0.2)。 校验和:在其它所有字段填充完毕后计算并填充。 自定义字段: 数据:填入大于1字节的用户数据。【说明】先使用协议编辑器的“手动计算”校验和,再使用协议编辑器的“自动计算”校验和,将两次计算结果相比较,若结果不一致,则重新计算。 ● IP在计算校验和时包括哪些容? 只包括IP报文中的首部,不包括数据部分 3. 在主机B(两块网卡分别打开两个捕获窗口)、E上启动协议分析器,设置过滤条件(提取IP协议),开始捕获数据。 4. 主机A发送第1步中编辑好的报文。

5. 主机B、E停止捕获数据,在捕获到的数据中查找主机A所发送的数据报,并回答以下问题: ●第1步中主机A所编辑的报文,经过主机B到达主机E后,报文数据是否发生变化?若发生变化,记录变化的字段,并简述发生变化的原因。 报文数据发生变化。发生变化的字段有:“生存时间”和“首部校验和”。其截图如下: 主机B的截图中,本机连接2对应的是路由,其IP地址为172.16.0.1,“生存时间”字段的值为128, “首部校验和”字段的值为0D78,而主机E中,“生存时间”字段的值为127,“首部校验和”字段的值为0E78。 原因:主机B为路由器,数据包每经过一路由器“生存时间”字段的值会减1,并重新计算校验和。 6. 将第1步中主机A所编辑的报文的“生存时间”设置为1,重新计算校验和。 7. 主机B、E重新开始捕获数据。 8. 主机A发送第5步中编辑好的报文。 9. 主机B、E停止捕获数据,在捕获到的数据中查找主机A所发送的数据报,并回答以下问题:主机B、E是否能捕获到主机A所发送的报文?简述产生这种现象的原因。 主机B对应于172.16.1.1的接口可以捕获到主机A所发送的报文;主机B对应于172.16.0.1的接口和主机E不能捕获到主机A所发送

信道容量实验报告

w .. . .. 湖南大学 信息科学与工程学院 实验报告 实验名称信道容量的迭代算法 课程名称信息论与编码

1.实验目的 (1)进一步熟悉信道容量的迭代算法; (2)学习如何将复杂的公式转化为程序; (3)掌握C 语言数值计算程序的设计和调试技术。 2、实验方法 硬件:pc 机 开发平台:visual c++软件 编程语言:c 语言 3、实验要求 (1)已知:信源符号个数r 、信宿符号个数s 、信道转移概率矩阵P 。 (2)输入:任意的一个信道转移概率矩阵。信源符号个数、信宿符号个数和每 个具体的转移概率在运行时从键盘输入。 (3)输出:最佳信源分布P*,信道容量C 。 4.算法分析 1:procedure CHANNEL CAPACITY(r,s,( ji p )) 2:initialize:信源分布 i p =1/r ,相对误差门限σ,C=—∞ 3:repeat 4: 5: 1i ji r i ji i p p p p =∑ij φ

6: C 2211log [exp(log )] r s ji ij r j p φ==∑∑ 7:until C C σ ?≤ 8:output P*= ()i r p ,C 9:end procedure 5.程序调试 1、头文件引入出错 f:\visualc++\channel\cpp1.cpp(4) : fatal error C1083: Cannot open include file: 'unistd.h': No such file or directory ————#include 纠错://#include f:\visualc++\channel\cpp1.cpp(5) : fatal error C1083: Cannot open include file: 'values.h': No such file or directory ————#include 纠错://#include 2、变量赋值错误 f:\visualc++\channel\cpp1.cpp(17) : error C2065: 'ij' : undeclared identifier f:\visualc++\channel\cpp1.cpp(17) : error C2440: 'initializing' : cannot convert from 'int' to 'float ** ' Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast ————float **phi_ij=ij=NULL; 纠错:float **phi_ij=NULL; 3、常量定义错误 f:\visualc++\channel\cpp1.cpp(40) : error C2143: syntax error : missing ';' before 'for' ————for(i=0;iDELTA) f:\visualc++\channel\Cpp1.cpp(84) : error C2021: expected exponent value, not ' ' 21 211exp(log )exp(log )s ji ij j r s ji ij r j p p φφ===∑∑∑i p

相关主题
文本预览
相关文档 最新文档