1 / 6
文档名称:

路由分组转发算法的模拟C++.docx

格式:docx   大小:55KB   页数:6页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

路由分组转发算法的模拟C++.docx

上传人:guoxiachuanyue005 2022/8/12 文件大小:55 KB

下载得到文件列表

路由分组转发算法的模拟C++.docx

相关文档

文档介绍

文档介绍:计算机网络作业
教材P128所述的分组转发算法如下:
从数据报的首部提取目的主机的IP地址D,得出目的网络地址为N。
若网络N与此路由器直接相连,则把数据报直接交付目的主机D;否则是间接交付,执行(3)。
若路由表中有目的地址为D的如下图所示:
目的主机所在的网络
子网掩码
下一跳地址
R3
R3
R1
具体程序代码如下:
#include<iostream>
usingnamespacestd;
classA//定义一个基类A
{
public:
intpart1;
intpart2;
intpart3;
intpart4;
};
Asubnet_ID;〃用于存储子网号classB:publicA〃定义B类用于存储输入的点分十进制IP地址{
public:
voiddisplay();
voidinput();
}D;//D用于存储输入的目的主机IP地址
voidB::input()〃定义input函数,用于输入参数,分四部分输入,每部分以回国结束{
cin>>part1;
cin>>part2;
cin>>part3;
cin>>part4;
}
voidB::display()〃以点分十进制形式显示IP地址,子网掩码
{
cout<<part1<<".";
cout<<part2<<".";
cout<<part3<<".";cout<<part4<<endl;
}
classC//定义C类用于设定路由表中和项
{
public:
voidsetDEST(intp1,intp2,intp3,intp4);voidsetSUBNET_MASK(inta1,inta2,inta3,inta4);
ADEST;//DEST为目的主机地址,类型为A
ASUBNET_MASK;〃子网掩码,类型为A
};
voidC::setDEST(intp1,intp2,intp3,intp4)
{
=p1;
=p2;
=p3;
=p4;
}
voidC::setSUBNET_MASK(inta1,inta2,inta3,inta4)
{
=a1;
=a2;
=a3;
=a4;
}
voidAND(BIP,Csubnet_mask)//AND函数用于将IP地址和子网掩码遂位相“与”等到相应的子网号
{
ASUB=;
=&;
=&;
=&;
=&;
}
intmain()
{
Cc[3];
c[O].setDEST(O,O,O,O);〃为相应的路由表项赋值
c[0].setSUBN