杭州电子科技大学通信工程计算机网络的实验报告2.doc

  • 格式:doc
  • 大小:168.51 KB
  • 文档页数:11

下载文档原格式

  / 11
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

计算机通信与网络

实验报告

姓名:徐一得

学号:15081525

班级:通信五班

上课时间:周四3-5

实验名称:Simulation on Performance of Data Link Control Protocols

一、实验目的

1.Realizing the principles of Data Link Control Protocols.

eing the software called matalab to simulate the

Performance of Data Link Control Protocols.

二.实验原理

流量控制实际上是对发送方数据流量的控制,使其发送率不致超过接收方所能承受的能力。这个过程需要通过某种反馈机制使发送方知道接收方是否能跟上发送方,也即需要有一些规则使得发送方知道在什么情况下可以接着发送下一帧,而在什么情况下必须暂停发送,以等待收到某种反馈信息后继续发送。

二、实验内容与要求

Using the same assumptions that are used for Figure 7.13 in Appendix 7A,

plot line utilization as a function of P, the probability that a single frame is in

error for the following error-control techniques:

a. Stop-and-wait

b. Go-back-N with w=7

c. Go-back-N with w=127

d. Selective reject with w=7

e. Selective reject with w=127

Do all of the preceding for the following values of a: 0.1, 1, 10, 100. Draw

conclusions about which technique is appropriate for various ranges of a.

三、实验程序与结果

Project(1)

a=0:0.1:1000;

U=utilization(a,1); //when length of window is 1

semilogx(a,U,'b'); //using function to depict line

hold on

U=utilization(a,7); //when length of window is 7

semilogx(a,U,'k');

hold on

U=utilization(a,127); //when length of window is 127

semilogx(a,U,'m');

title('figure 7.12 slind-wind utilization as a function of a')

ylabel('utilization')

xlabel('a')

text(0.7,0.5,'\leftarrow w=1'); //noting arrow to

show what the line is text(8,0.6,'\leftarrow w=7');

text(130,0.8,'\leftarrow w=127');

function U=utilization(a,w)

U=1.*(w>=2*a+1)+w./(2*a+1).*(w<2*a+1);

End //formula for utilization U=1/(1+2a)

Project(2)

a=0:0.1:1000;

p=1/1000;

U=stopandwait(a,p); //using the formula to

calculate the U semilogx(a,U,'r'); //using function to depict line hold on

U=selective_reject(a,7,p); //using the formula to

calculate the U

semilogx(a,U,'g');

hold on

U=gobackn(a,7,p);

semilogx(a,U,'b');

hold on

U=selective_reject(a,127,p);

semilogx(a,U,'k');

hold on

U=gobackn(a,1277,p);

semilogx(a,U,'y');

title('figure 7.13 ARQ utilization as a function of a (P=10-3)')

ylabel('utilization')

xlabel('a')

text(0.2,0.2,'stopwait\rightarrow ');

text(0.23,0.7,'w=7 Go-back-N & \newline w=7 selective_reject\rightarrow w=7');

text(10,0.8,'w=127\newline Go-back-N \rightarrow');

text(110,0.7,'\leftarrow w=127');

function U=stopandwait(a,p)

U=(1-p)./(1+2*a); //U=(1-p)/(1+2a)

end

function U=selective_reject(a,w,p)

U=(1-p).*(w>=2*a+1)+w.*(1-p)./(2*a+1).*(w<2*a+1);

End //U=1-p when w>=2a+1

U=W(1-p)/(2a+1) when w<2a+1