tcp拥塞控制编程实验c语言代码,C语言 计算机网络TCP拥塞控制模拟程序
幫助你更好地認識TCP擁塞控制的機制
#include "stdio.h"
#include "stdlib.h"
void show()
{
//system("cls");
printf("\n");
printf("請輸入ssthrest的初始值:\n\n");
printf("請輸入需要模擬的傳輸輪次數:\n\n");
printf("請輸入重傳的值n:\n");
printf("請輸入快重傳的值m:\n\n");
}
void main()
{
int sst=0;
int x=0;
int ch=0;
int n=0;//重傳的報文段
int m=0;//快重傳的報文段
int i=1;//打印傳輸輪次
int cwnd=1;
int cchuan=0;
do
{
show();
scanf("%d\t%d\t%d\t%d",&sst,&x,&n,&m);
//慢開始
printf("\n擁塞窗口cwnd:");
for(cwnd=1,i=1;cwnd<=sst;i++)
{
printf("%d ",cwnd);
cwnd=2*cwnd;
}
//擁塞避免
for(cwnd=sst;i
{
cwnd=cwnd+1;
cchuan=cwnd;//標記重傳的cwnd
printf("%d ",cwnd);
}
//重傳
for(cwnd=1;cwnd<=(0.5*cchuan);i++,cwnd=2*cwnd)
{
printf("%d ",cwnd);
}
//快恢復
for(cwnd=(int)cwnd*0.5;i<=x;i++)
{
cwnd=cwnd+1;
printf("%d ",cwnd);
}
printf("\n");
printf("傳輸輪次X:");
for(i=1;i<=x;i++)
{
printf("%d ",i);
}
//1990增加的擁塞控制算法
//慢開始
printf("\n\n\nTCP Reno版本\n");
printf("擁塞窗口cwnd:");
for(cwnd=1,i=1;cwnd<=sst;i++)
{
printf("%d ",cwnd);
cwnd=2*cwnd;
}
//擁塞避免
for(cwnd=sst;i
{
cwnd=cwnd+1;
cchuan=cwnd;//標記重傳的cwnd
printf("%d ",cwnd);
}
//快重傳 快恢復
for(cwnd=(int)cchuan/2;i
{
printf("%d ",cwnd);
}
//超時重傳
for(cwnd=1;i<=x;i++)
{
printf("%d ",cwnd);
cwnd=cwnd*2;
}
printf("\n");
printf("傳輸輪次X:");
for(i=1;i<=
x;i++)
{
printf("%d ",i);
}
printf("\n\n\t是否繼續測試(0/1)?\n");
scanf("%d",&ch);
}while(ch==1);
}
總結
以上是生活随笔為你收集整理的tcp拥塞控制编程实验c语言代码,C语言 计算机网络TCP拥塞控制模拟程序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 原神无想刃狭间剑阵宝箱怎么开?
- 下一篇: 递归下降文法C语言实验报告,递归下降语法