《上海师范大学计算机网络与通讯研究生15》由会员分享,可在线阅读,更多相关《上海师范大学计算机网络与通讯研究生15(9页珍藏版)》请在金锄头文库上搜索。
1、计算机网络与通信试题学号 姓名 1.简述 SCTP 协议及应用。 (10 分)2.简述计算机网络理论分析主要使用的数学基础和模型及常用的仿真工具(10 分)3.网络上有 A-K 个节点,其拓扑结构见下图,请使用 TCP 或 UDP 协议,在应用层实现 基于网络的 Bellman-ford 算法(提供源码) (40 分) 。AHD KJIGFECB354 22324276341613要求: 设计节点之间可靠通信协议;使用 FSM 描述节点之间的行为状态; 分析网络协议对算法的影响; 求出 A 到 K 的最优路径。4.某计算机局域网中有 N 台计算机,这 N 台计算机利用组播协议在 7213 端口
2、实现相互 通讯,每台计算机在随机每隔 2s 发送数据,发送数据占用时间是 0.8s, (40 分) (1)试分析该局域网中,每台计算机数据发送成功的概率。 (2)分析当局域网中计算机增加到 2N 台后,每台计算机数据发送成功的概率。 (3)使用实验仿真,分析对比理论分析与仿真实验结果。1、答:SCTP 协议简介:SCTP(Stream Control Transmission Protocol,流控制传输协 议),传输层(Transport Layer)协议,提供基于不可靠传输业务的协议之上的可靠的数 据报传输协议。SCTP 是一个面向连接的流传输协议,它可以在两个端点之间提供稳定、 有序的数
3、据传递服务。SCTP 可以看做是 TCP 协议的改进:SCTP 它是多宿主(Multi- homing)连接,一个 SCTP 连接可以支持多个流(Multi-streaming) ,流(Stream)是指 从一个 SCTP 端点到另一端点之间建立的单向逻辑通路,通常情况下所有用户消息在 流中按序传递。 SCTP 有更好的安全性。SCTP 实际上是一个面向连接的协议,使得信 令传输具有更高的可靠性,SCTP 的设计包括适当的拥塞控制、防止泛滥和伪装攻击、 更优的实时性能和多归属性支持。将在两个端点之间设置 SCTP 关联。这些端点使用 的四次握手机制借助 cookie 来防止遭到某些类型的拒绝服
4、务 (denial-of-service, DoS) 攻击。端点可由多个 IP 地址表示。 SCTP 应用:移动通信网络中,SCTP 协议在 IP 承载连接的情况下广泛得到应用,网络 示意图中多条网元连接均有 SCTP 协议的运用,如图 1 所示。图 1 SCTP 协议应用示例图 l RNS(Radio Network Subsystem,无线网络子系统)与 MSCS 之间:如果采用 M3UA(MTP3-User Adaptation layer protocol,MTP 第三层的用户适配层协议) ,协议栈为 IP/SCTP/M3UA/SCCP/RANAP; l MGW 与 MSCS 之间,如
5、果采用 M3UA,协议栈为 IP/SCTP/M3UA/H.248,同时 H.248 也 可以直接承载在 SCTP 之上; l HLR(Home Location Register,归属位置寄存器)与 MSCS/VLR 之间,如果采用 M3UA,协议栈为 IP/SCTP/M3UA/SCCP/TCAP/MAP; l PSTN(Public Switched Telephone Network,公共交换电话网)与 MSCS 之间,SCTP 协议 在完成传统的七号信令和 IP 网络之间信息传输中占据了很重要的角色。2、答:计算机网络理论分析主要使用的数据基础理论包括概率论、统计学、线性代数、优 化理论
6、以及信号、系统与变换。理论工具包括随机过程与排队论、博弈论、控制论与信息 论。概率论基础具体包括随机事件,联合概率、条件概率,贝叶斯公式,标准离散分布、 标准连续分布,以及常用定理马尔科夫不等式、切比雪夫不等式、中心极限定理等;统计 学基础具体包括总体抽样,描述样本,根据样本参数推断总体参数,实验结果的假设检验, 独立与依赖:回归与相关,同时比较多个结果的方差分析,实验设计,处理大数据集等; 线性代数基础包括矢量和矩阵的代数运算,线性组合、独立性、基和维度、使用矩阵代数 求解线性方程组,线性变换、特征值和特征向量,随机矩阵等;优化理论以及信号基础知 识包括:系统建模和优化、最优化引导、整数线性
7、规划、动态规划等;系统与变换基础知 识包括:信号,系统,线性时不变系统的分析,傅里叶级数,傅里叶变换及其特性,拉普 拉斯变换,离散傅里叶变换和快速傅里叶变换等。 主要使用的模型:。 其中 OSI 七层模型包括:应用层、表示层、会话层、传输层、网络层、数据链路层和物理 层;TCP/IP 五层模型包括:应用层、传输层、网络层、数据链路层和网络接口层。TCP/IP 四层模型包括:应用层、传输层、网络层和网络接口层。 常用的仿真工具:OPNET,QualNet,NS-2,NS-3,GloMoSim,NCTUNS,GTNetS(包括 RT IKit library) ,OMNET+等。3、答:代码如下:
8、public class BellmanFord private static final int m = 99999; /大于图中边的任意值,表示无穷大public static void main(String args) / 设置各定点邻接边权值Edge a1 = new Edge(0, 1, 5);Edge a2 = new Edge(0, 5, 3);Edge a3 = new Edge(1, 0, 5); Edge a4 = new Edge(1, 7, 3); Edge a5 = new Edge(1, 2, 4);Edge a6 = new Edge(2, 1, 4); Edg
9、e a7 = new Edge(2, 4, 2); Edge a8 = new Edge(2, 3, 3);Edge a9 = new Edge(3, 2, 3);Edge a10 = new Edge(3, 4, 4);Edge a11 = new Edge(3, 8, 6);Edge a12 = new Edge(3, 10, 6);Edge a13 = new Edge(4, 2, 2);Edge a14 = new Edge(4, 5, 2);Edge a15 = new Edge(4, 8, 1);Edge a16 = new Edge(4, 10, 6);Edge a17 = ne
10、w Edge(4, 3, 4);Edge a18 = new Edge(5, 0, 3);Edge a19 = new Edge(5, 6, 3);Edge a20 = new Edge(5, 4, 2);Edge a21 = new Edge(6, 5, 3);Edge a22 = new Edge(6, 7, 4);Edge a23 = new Edge(6, 8, 2);Edge a24 = new Edge(7, 6, 4);Edge a25 = new Edge(7, 2, 3);Edge a26 = new Edge(7, 9, 2);Edge a27 = new Edge(8,
11、6, 2);Edge a28 = new Edge(8, 4, 1);Edge a29 = new Edge(8, 3, 6);Edge a30 = new Edge(8, 6, 1);Edge a31 = new Edge(9, 10, 7);Edge a32 = new Edge(9, 8, 1);Edge a33 = new Edge(9, 7, 2);Edge a34 = new Edge(10, 3, 6);Edge a35 = new Edge(10, 4, 10);Edge a36 = new Edge(10, 9, 7);Edge as = new Edgea1, a2, a3
12、, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24, a25, a26, a27, a28, a29, a30, a31, a32, a33, a34, a35, a36; int dist = new int; int pior = new int; dist0 = 0; pior0 = 0; for (int i = 1; i dasj.getU() + asj.getW() dasj.getV() = dasj.getU() + asj.ge
13、tW(); pasj.getV() = asj.getU(); /设置新的类 class Edge private int u; private int v; private int w; public Edge(int u, int v, int w) this.u = u; this.v = v; this.w = w; public int getU() return u; public void setU(int u) this.u = u; public int getV() return v; public void setV(int v) this.v = v; public i
14、nt getW() return w; public void setW(int w) this.w = w; 由以上代码可以得出最优路径为:AFEK。4、答:(1):本题采用组播协议通讯,因此信号是广播形式发送。当站点检 测信道是空闲时,而未必真的空闲,因为信号传输速度有限,此时发送数据, 就有可能与其他主机发送的信号碰撞,导致失败。此题中,N 台主机在 2 秒钟随意发送数据,若假设任意主机在发送数据之前 监听信道的电磁波传输时间忽略不计,且不考虑主机发送数据失败之后重发的 情况,则只要任意两个主机在发送需求时间小于 0.8 的间隔内发送数据,就会 失败。任意两个主机发生冲突的概率可以转换为
15、在(0,2)取两个随机数,此时 这两个随机数之差小于 0.8 的概率。用 x 轴表示第一个数,用 y 轴表示第二个 数,两数之和小于 0.8 即 x-y #include #include #include #define MCASTADDR “233.0.0.1“ /本例使用的多播组地址。 #define MCASTPORT 7213 /端口号。 #define BUFSIZE 1024 /接收数据缓冲大小。 int main( int argc,char * argv) WSADATA wsd;struct sockaddr_in local,remote,from;SOCKET sock,sockM;TCHAR recvbufBUFSIZE;int len = sizeof( struct sockaddr_in);int ret;/初始化 WinSock2.2if( WSAStartup( MAKEWORD(2,2), return -1;if(sock=WSASocket(AF_INET,