第一篇:中南大学计算机网络作业题目
计算机网络第一次作业题目
1.假设你已经将你的狗Bernie 训练成不仅可以携带一小瓶白兰地,还能携带一箱三盒8 毫米的磁带(当你的磁盘满了的时候,你可能会认为这是一次紧急事件)。每盒磁带的 容量为7GB 字节。无论你在哪里,狗跑向你的速度是18 千米/小时。试问在什么距离范 围内Bernie 的数据传输速率会超过一条数据速率为150Mbps 的传输线(不算额外开 销)?试问分别在以下情况下:(1)狗的速度加倍;(2)每盒磁带容量加倍;(3)传输 线路的速率加倍。上述的结果有什么变化?
4.除了带宽和延迟以外,网络若要为下列流量提供很好的服务质量,试问还需要哪个参 数?(1)数字语音流量;(2)视频流量;(3)金融业务流量。
5.在存储-转发数据包交换系统中,衡量延迟的一个因素是数据包在交换机上存储和转发 需要多长时间。假设在一个客户机-服务器系统中,客户机在纽约而服务器在加州,如 果交换时间为10 微妙,试问交换时间是否会成为影响延迟的一个主要因素?假设信号 在铜线和光纤中的传输速度是真空光速的2/3.8.5 个路由器通过一个点到点子网连接在一起。网络设计者可以为任何一对路由器设置一 条高速线路、中速线路、低速线路或根本不设置线路。如果计算机需要100 毫秒来生成 并遍历每个网络拓扑,试问它需要多长时间才能遍历完所有的网络拓扑?
10.试问使用层次协议的两个理由是什么?使用层次协议的一个可能缺点是什么?
16.一个系统具有n 层协议。应用层产生长度为M 字节的报文,在每一层加上长度为h 字节的报文头。试问报文头所占的网络带宽比例是多少?
20.当在两台计算机之间传输一个文件时,可以采用两种不同的确认策略。在第一种策略中,该文件被分解成许多个数据包,接收方独立地确认每一个数据包,但没有对整个文件进 行确认。在第二种策略中,这些数据包并没有被单独地确认,但是当整个文件到达接收 方时会被确认。请讨论这两种方案。
23.一幅图像的分辨率为1024*768 像素,每个像素用3 字节表示。假设该图像没有被压缩。试问,通过56kbps 的调制解调器传输这幅图像需要多长时间?通过1Mbps 的线缆调制解 调器呢?通过10Mbps 的以太网呢?通过100Mbps 的以太网呢?
27.假设实现第k 层操作的算法发生了变化。试问这会影响到第k-1 和第k+1 层的操作吗?
28.假设由第k 层提供的服务(一组操作)发生了变化。试问这会影响到第k-1 和第k+1 层 的服务吗?
34.到IETF 的网站www.xiexiebang.com,了解它们正在做什么。选择你喜欢的主题,写半页针对 该问题的报告,并提出自己的解决方案。
第二篇:中南大学计算机网络课程设计
通信原理课程设计报告
专业班级
电子信息11xx
姓名学号
xxx(090911xxxx)
指导教师
陈科文、张金焕
设计时间
2014年7月
电子信息工程系 信息科学与工程学院
目录
第一章 课程设计要求和目的...........................................1 1.1 设计要求....................................................1 1.2 设计目的....................................................1 第二章 滑动窗口协议仿真.............................................1 2.1 设计要求....................................................1 2.2 设计思想....................................................1 2.3 编程实现过程................................................9 2.3.1 开发环境.............................................9 2.3.2 程序界面设计.........................................9 2.3.3 关键模块分析.........................................11 2.3.4 结果演示与分析.......................................18
第一章 课程设计要求和目的
1.1设计要求
通过本课程教学,要求学生熟悉 TCP/IP 协议工作机制、熟悉基于 Socket 的网络通信程序的设计方法,熟练掌握至少一种编程语言及工具的使用。通过设计和调试有关程序,掌握一种网络协议或算法的编程实现方法或具体应用,同时设计一个相对独立的网络应用程序。
1.2 设计目的
通过将理论与实践相结合,使学生进一步深入理解通信网的工作原理,掌握网络应用开发技术,学会应用所学理论知识来分析和解决实际问题,培养网络技术研究与开发的基本能力以及创新精神。
第二章 滑动窗口协议仿真
2.1设计要求
(1)程序按照滑动窗口协议实现端对端的数据传送。包括协议的各种策略,如包丢失、停等应答、超时等都应有所仿真实现。
(2)显示数据传送过程中的各项具体数据;双方帧的个数变化,帧序号,发送和接受速度,暂停或重传提示等。
(3)增加其它附加创新功能。程序应有图形化界面,显示直观、易操作。
2.2设计思想
滑动窗口机制
(1).窗口机制
滑动窗口协议的基本原理就是在任意时刻,发送方都维持了一个连续的允许发送的帧的序号,称为发送窗口;同时,接收方也维持了一个连续的允许接收的帧的序号,称为接收窗口。发送窗口和接收窗口的序号的上下界不一定要一样,甚至大小也可以不同。不同的滑动窗口协议窗口大小一般不同。发送方窗口内的序列号代表了那些已经被发送,但是还没有被确认的帧,或者是那些
可以被发送的帧。下面举一个例子(假设发送窗口尺寸为2,接收窗口尺寸为1):
图2-2-1
分析:①初始态,发送方没有帧发出,发送窗口前后沿相重合。接收方0号窗口打开,等待接收0号帧;②发送方打开0号窗口,表示已发出0帧但尚确认返回信息。此时接收窗口状态不变;③发送方打开0、1号窗口,表示0、1号帧均在等待确认之列。至此,发送方打开的窗口数已达规定限度,在未收到新的确认返回帧之前,发送方将暂停发送新的数据帧。接收窗口此时状态仍未变;④接收方已收到0号帧,0号窗口关闭,1号窗口打开,表示准备接收1号帧。此时发送窗口状态不变;⑤发送方收到接收方发来的0号帧确认返回信息,关闭0号窗口,表示从重发表中删除0号帧。此时接收窗口状态仍不变;⑥发送方继续发送2号帧,2号窗口打开,表示2号帧也纳入待确认之列。至此,发送方打开的窗口又已达规定限度,在未收到新的确认返回帧之前,发送方将暂停发送新的数据帧,此时接收窗口状态仍不变;⑦接收方已收到1号帧,1号窗口关闭,2号窗口打开,表示准备接收2号帧。此时发送窗口状态不变;⑧发送方收到接收方发来的1号帧收毕的确认信息,关闭1号窗口,表示从重发表中删除1号帧。此时接收窗口状态仍不变。
若从滑动窗口的观点来统一看待1比特滑动窗口、后退n及选择重传三种协议,它们的差别仅在于各自窗口尺寸的大小不同而已。1比特滑动窗口协议:发送窗口=1,接收窗口=1;后退n协议:发窗口>1,接收窗口>1;选择重传协议:发送窗口>1,接收窗口>1。(2).1比特滑动窗口协议
当发送窗口和接收窗口的大小固定为1时,滑动窗口协议退化为停等协议(stop-and-wait)。该协议规定发送方每发送一帧后就要停下来,等待接收方已正确接收的确认(acknowledgement)返回后才能继续发送下一帧。由于接收
方需要判断接收到的帧是新发的帧还是重新发送的帧,因此发送方要为每一个帧加一个序号。由于停等协议规定只有一帧完全发送成功后才能发送新的帧,因而只用一比特来编号就够了。其发送方和接收方运行的流程图如图所示。
图2-2-
2(3).后退n协议
由于停等协议要为每一个帧进行确认后才继续发送下一帧,大大降低了信道利用率,因此又提出了后退n协议。后退n协议中,发送方在发完一个数据帧后,不停下来等待应答帧,而是连续发送若干个数据帧,即使在连续发送过程中收到了接收方发来的应答帧,也可以继续发送。且发送方在每发送完一个数据帧时都要设置超时定时器。只要在所设置的超时时间内仍收到确认帧,就要重发相应的数据帧。如:当发送方发送了N个帧后,若发现该N帧的前一个帧在计时器超时后仍未返回其确认信息,则该帧被判为出错或丢失,此时发送方就不得不重新发送出错帧及其后的N帧。
图2-2-3
从这里不难看出,后退n协议一方面因连续发送数据帧而提高了效率,但另一方面,在重传时又必须把原来已正确传送过的数据帧进行重传(仅因这些数据帧之前有一个数据帧出了错),这种做法又使传送效率降低。由此可见,若传输信道的传输质量很差因而误码率较大时,连续测协议不一定优于停止等待协议。此协议中的发送窗口的大小为k,接收窗口仍是1。(4).选择重传协议
在后退n协议中,接收方若发现错误帧就不再接收后续的帧,即使是正确到达的帧,这显然是一种浪费。另一种效率更高的策略是当接收方发现某帧出错后,其后继续送来的正确的帧虽然不能立即递交给接收方的高层,但接收方仍可收下来,存放在一个缓冲区中,同时要求发送方重新传送出错的那一帧。一旦收到重新传来的帧后,就可以原已存于缓冲区中的其余帧一并按正确的顺序递交高层。这种方法称为选择重发(SELECTICE REPEAT),其工作过程如图所示。显然,选择重发减少了浪费,但要求接收方有足够大的缓冲区空间。滑动窗口协议
仍然考虑链路的延迟与带宽的乘积为8 K B,帧尺寸为1 K B的情形。让发送方在收到第一帧的A C K的同时准备发送第九帧。允许我们这样做的算法称为滑动窗口(sliding window),时间线如图2-2-3所示。1.滑动窗口算法
滑动窗口算法工作过程如下。首先,发送方为每1帧赋一个序号(sequence number),记作S e q N u m。现在,让我们忽略S e q N u m是由有限大小的头部字段实现的事实,而假设它能无限增大。发送方维护3个变量:发送窗口大
小(send window size),记作S W S,给出发送方能够发送但未确认的帧数的上界; L A R表示最近收到的确认帧(last acknowledgement re c e i v e d)的序号;L F S表示最近发送的帧(last frame sent)的序号,发送方还维持如下的不变式: LAR-LFR≤RWS
当一个确认到达时,发送方向右移动L A R,从而允许发送方发送另一帧。同时,发送方为所发的每个帧设置一个定时器,如果定时器在A C K到达之前超时,则重发此帧。注意:发送方必须存储最多S W S个帧,因为在它们得到确认之前必须准备重发。
接收方维护下面3个变量:接收窗口大小(receive window size),记为RW S,给出接收方所能接收的无序帧数目的上界; L A F表示可接收帧(l a rgestacceptable frame)的序号;L F R表示最近收到的帧(last frame re ce i v e d)的序号。接收方也维持如下不变式: LFS-LAR≤SWS
当一个具有顺序号S e q N u m的帧到达时,接收方采取如下行动:如果S e q N u m≤L F R或S e q N u m > L A F,那么帧不在接收窗口内,于是被丢弃;如果L F R<Se q N u m≤L A F,那么帧在接收窗口内,于是被接收。现在接收方需要决定是否发送一个A C K。设S e q N u m To A C K表示未被确认帧的最大序号,则序号小于或等于S e q N u m To Ac k的帧都已收到。即使已经收到更高序号的分组,接收方仍确认S e q N u m To A c k的接收。这种确认被称为是累积的(c u m u l a t i v e)。然后它设置L F R = S e q Nu m To A c k,并调整L A F = L F R + RW S。例如,假设L F R= 5(即,上次接收方发送的A C K是为了确认顺序号5的),并且RWS = 4。这意味着L A F = 9。如果帧7和8到达,则存储它们,因为它们在接收窗口内。然而并不需要发送A C K,因为帧6还没有到达。帧7和8被称为是错序到达的。(从技术上讲,接收方可以在帧7和8到达时重发帧5的A C K。)如果帧6当时到达了(或许它在第一次丢失后又重发从而晚到,或许它只是被延迟了),接收方确认帧8,L F R置为8,L A F置为1 2。如果实际上帧6丢失了,则出现发送方超时,重发帧6。我们看到,当发生超时时,传输数据量减少,这是因为发送方在帧6确认之前不能向前移动窗口。这意味着分组丢失时,此方案将不再保证管道满载。注意:分组丢失时间越长,这个问题越严重。注意,在这个例子中,接收方可以在帧7刚一到达时就为帧6发送一个认帧N A K(negative acknowledgment)。然而,由于发送方的超时机制足
以发现这种情况,发送N A K反而为发送方增加了复杂性,因此不必这样做。正如我们已提到的,当帧7和8到达时为帧5发送一个额外的A C K是合理的;在某些情况下,发送方可以使用重复的A C K作为一个帧丢失的线索。这两种方法都允许早期的分组丢失检测,有助于改进性能。关于这个方案的另一个变种是使用选择确认(selective acknowledgements)。即,接收方能够准确地确认那些已收到的帧,而不只是确认按顺序收到最高序号的帧。因此,在上例中,接收方能够确认帧7、8的接收。如果给发送方更多的信息,就能使其较容易地保持管道满载,但增加了实现的复杂性。
发送窗口大小是根据一段给定时间内链路上有多少待确认的帧来选择的;对于一个给定的延迟与带宽的乘积,S W S是容易计算的。另一方面,接收方可以将RW S设置为任何想要的值。通常的两种设置是:RW S= 1,表示接收方不存储任何错序到达的帧; RW S=S W S,表示接收方能够缓存发送方传输的任何帧。由于错序到达的帧的数目不可能超过S W S个,所以设置RWS >S W S没有意义。
2.有限顺序号和滑动窗口
现在我们再来讨论算法中做过的一个简化,即假设序号是可以无限增大的。当然,实际上是在一个有限的头部字段中说明一个帧的序号。例如,一个3比特字段意味着有8个可用序号0 ~ 7。因此序号必须可重用,或者说序号能回绕。这就带来了一个问题:要能够区别同一序号的不同次发送实例,这意味着可用序号的数目必须大于所允许的待确认帧的数目。例如,停止等待算法允许一次有1个待确认帧,并有2个不同的序号。假设序号空间中的序号数比待确认的帧数大1,即S W S ≤ M A a xS e q N u m-1,其中M a x Seq N u m 是可用序号数。这就够了吗?答案取决于RW S。如果RW S = 1,那么MaxSeqNum≥SWS+1是足够了。如果RW S等于S W S,那么有一个只比发送窗口尺寸大1的M a x S e q N u m是不够的。为看清这一点,考虑有8个序号0 ~ 7的情况,并且S W S = RW S = 7。假设发送方传输帧0 ~ 6,并且接收方成功接收,但A C K丢失。接收方现在希望接收帧7,0 ~ 5,但发送方超时,然后发送帧0 ~ 6。不幸的是,接收方期待的是第二次的帧0 ~ 5,得到的却是第一次的帧0 ~ 5。这正是我们想避免的情况。结果是,当RW S = S W S时,发送窗口的大小不能大于可用序号数的一半,或更准确地说,SWS<(Maxseqnum+1)/2直观地,这说明滑动窗口协议是在序号空间的两半之间变换,就像停止等待协议的序号是在0和1之间变换一样。唯一的区别是,它在序号空间的两半之间连续滑动而不是离散的变换。注意,这条规则是特别针对RW S = S W S的。我们把确定适用于RW S和S W S的
任意值的更一般的规则留做一个练习。还要注意,窗口的大小和序号空间之间的关系依赖于一个很明显以至于容易被忽略的假设,即帧在传输中不重新排序。这在直连的点到点链路上不能发生,因为在传输过程中一个帧不可能赶上另一个帧。
3.滑动窗口的实现
下面的例程说明我们如何实现滑动窗口算法的发送和接收的两个方面。该例程取自一个正在使用的协议,称为滑动窗口协议S W P(Sliding Window Pro t o c o l)。为了不涉及协议图中的邻近协议,我们用H L P(高层协议)表示S W P上层的协议,用L I N K(链路层协议)表示S W P下层的协议。我们先定义一对数据结构。首先,帧头部非常简单:它包含一个序号(S e q N u m)和一个确认号(A c k N u m)。它还包含一个标志(F l a g s)字段,表明帧是一个A C K帧还是携带数据的帧。
其次,滑动窗口算法的状态有如下结构。对于协议发送方,该状态包括如上所述的变量L A R和L F S,以及一个存放已发出但尚未确认的帧的队列(s e n d Q)。发送方状态还包含一个计数信号量(counting semaphore),称为s e n d Wi n d o w N o t F u l l。下面我们将会看到如何使用它,但一般来说,信号量是一个支持s e m Wa i t和s e m S i g n a l操作的同步原语。每次调用S e m S i g n al,信号量加1,每次调用S e m Wa i t,信号量减1。如果信号量减小,导致它的值小于0,那么调用进程阻塞(挂起)。一旦执行了足够的s e m S i g n a l操作而使信号量的值增大到大于0,在调用s e m Wa i t的过程中阻塞的进程就允许被恢复。对于协议的接收方,如前所述,该状态包含变量L F R,加上一个存放已收到的错序帧的队列(r e c v Q)。最后,虽然未显示,发送方和接收方的滑动窗口的大小分别由常量S W S和RW S表示。
S W P的发送方是由s e n d S W P过程实现的。这个例程很简单。首先,s e m Wa i t使这个进程在一个信号量上阻塞,直到它可以发另一帧。一旦允许继续,s e n d S W P设置帧头部中的顺序号,将此帧的拷贝存储在发送队列(s e n d Q)中,调度一个超时事件以便处理帧未被确认的情况,并将帧发给低层协议。
值得注意的一个细节是刚好在调用m s g A d d H dr之前调用s t o r e _ s w p _ h d r。该例程将存有S W P头部的C语言结构(s t a t e-> h d r)转化为能够安全放在消息前面的字节串(h b u f)。该例程(未给出)必须将头部中的每一个整数字段转化为网络字节顺序,并且去掉编译程序加入C语言结构中的
任意填充。7.1节将详细讨论字节顺序的问题,但现在,假设该例程将多字整数中最高有效位放在最高地址字节就足够了。这个例程的另一个复杂性是使用s e m Wa i t 和s e n dW i n d ow N o t F u l l 信号量。S e n dWi n d o w N o t F u l l被初始化为发送方滑动窗口的大小S W S(未给出这一初始化)。发送方每传输一帧,s e m Wa i t操作将这个数减1,如果减小到0,则阻塞发送方进程。每收到一个A C K,在d e l i v e r SW P中调用s e m S i g n a l操作(见下面)将此数加1,从而激活正在等待的发送方进程。
在继续介绍S W P的接收方之前,需要调整一个看上去不一致的地方。一方面,我们说过,高层协议通过调用s e n d操作来请求低层协议的服务,所以我们就希望通过S W P发送消息的协议能够调用s e n d(S W P, p a c k e t)。另一方面,用来实现S W P的发送操作的过程叫做s e n d S W P,并且它的第一个参数是一个状态变量(S w p S t a t e)。结果怎样呢?答案是,操作系统提供了粘结代码将对s e n d的一般调用转化为对s e n d S W P的特定协议调用的粘结代码。这个粘结代码将s e n d的第一个参数(协议变量S W P)映射为一个指向s e n d S W P的函数指针和一个指向S W P工作时所需的协议状态的指针。我们之所以通过一般函数调用使高层协议间接调用特定协议函数,是因为我们想限制高层协议中对低层协议编码的信息量。这使得将来能够比较容易地改变协议图的配置。现在来看d e l i v e r操作的S W P的特定协议实现,它在过程d e l i v e r SW P中实现。这个例程实际上处理两种不同类型的输入消息:本结点已发出帧的A C K和到达这个结点的数据帧。在某种意义上,这个例程的ACK部分是与send SWP中所给算法的发送方相对应的。通过检验头部的F l a g s字段可以确定输入的消息是ACK还是一个数据帧。注意,这种特殊的实现不支持数据帧中捎带A C K。当输入帧是一个ACK时,delive rSWP仅仅在发送队列(send Q)中找到与此ACK相应的位置(slot),取消超时事件,并且释放保存在那一位置的帧。由于A C K可能是累积的,所以这项工作实际上是在一个循环中进行的。对于这种情况值得注意的另一个问题是子例程swp In Wind o w的调用。这个子例程在下面给出,它确保被确认帧的序号是在发送方当前希望收到的A C K的范围之内。当输入帧包含数据时,d e l i v e r S W P首先调用m s g S t r i pH d r和l o a d _ s w p _ h d r以便从帧中提取头部。例程l o a d _ s w p_ h d r对应着前面讨论的s t o r e _ s w p _ h d r,它将一个字节串转化为容纳S W P头部的C语言数据结构。然后d e l i v e r SW P调用s w p I n Wi n d o w以确保帧序号在期望的序号范围内。如果是这样,例程在已收到的连续的帧的集合上循环,并通过调用d e l i v e r HL P例程将它们传给上层协议。它也要向发送方发送累积的A C K,但却是通过在接收队列上循环来实现的(它没有使用本节前面给出的s e q N u m To Ac k变量)。
最后,s w p I n Window是一个简单的子例程,它检查一个给定的序号是否落在某个最大和最小顺序号之间。4.帧顺序和流量控制
滑动窗口协议可能是计算机网络中最著名的算法。然而,关于该算法易产生混淆的是,它可以有三个不同的功能,第一个功能是本节的重点,即在不可靠链路上可靠地传输帧。(一般来说,该算法被用于在一个不可靠的网络上可靠地传输消息。)这是该算法的核心功能。
滑动窗口算法的第二个功能是用于保持帧的传输顺序。这在接收方比较容易实现,因为每个帧有一个序号,接收方要保证已经向上层协议传递了所有序号比当前帧小的帧,才向上传送该当前帧。即,接收方缓存了(即没有传送)错序的帧。本节描述的滑动窗口算法确实保持了帧的顺序,尽管我们可以想象一个变异,即接收方没有等待更早传送的帧都到达就将帧传给下一个协议。我们可以提出的一个问题是:我们是否确实需要滑动窗口协议来保持帧的顺序,或者,这样的功能在链路层是否是不必要的。不幸的是,我们还没有看到足够多的网络体系结构来回答这个问题我们首先需要理解的是,点到点链路序列如何由交换机连接而形成一条端到端的路径。滑动窗口算法的第三个功能是,它有时支持流量控制(f l o w c o n t ro l),它是一种接收方能够控制发送方使其降低速度的反馈机制。这种机制用于抑制发送方发送速度过快,即抑制传输比接收方所能处理的更多的数据。这通常通过扩展滑动窗口协议完成,使接收方不仅确认收到的帧,而且通知发送方它还可接收多少帧。可接收的帧数对应着接收方空闲的缓冲区数。在按序传递的情况下,在将流量控制并入滑动窗口协议之前,我们应该确信流量控制在链路层是必要的。
2.3编程实现过程 2.3.1 开发环境 操作系统:Windows 7旗舰版
开发语言:C++ / MFC 编译环境:MS Visual C++6.0 2.3.2 程序界面设计
此程序由于功能需要,分别设计了发送端(图2-3-2-1)和接收端(图2-3-2-2)两个MFC界面,实例如下:
图2-3-2-1
图2-3-1-2
2.3.3 关键模块分析
1.窗口初始化
BOOL CSenderDlg::OnInitDialog(){
// Set the icon for this dialog.The framework does this automatically // when the application's main window is not a dialog SetIcon(m_hIcon, TRUE);SetIcon(m_hIcon, FALSE);
// Set big icon CMenu* pSysMenu = GetSystemMenu(FALSE);if(pSysMenu!= NULL){
} CString strAboutMenu;strAboutMenu.LoadString(IDS_ABOUTBOX);if(!strAboutMenu.IsEmpty()){
} pSysMenu->AppendMenu(MF_SEPARATOR);pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);// IDM_ABOUTBOX must be in the system command range.ASSERT((IDM_ABOUTBOX & 0xFFF0)== IDM_ABOUTBOX);ASSERT(IDM_ABOUTBOX < 0xF000);// Add “About...” menu item to system menu.CDialog::OnInitDialog();
// Set small icon
// TODO: Add extra initialization here //初始化WinSock WSADATA wsa;if(WSAStartup(MAKEWORD(2, 2), &wsa)!= 0){
} AfxMessageBox(“Failed to initialize the winsock 2 stack”);return FALSE;//创建UDP Sender Socket if((m_UDPSndrSocket = WSASocket(AF_INET, SOCK_DGRAM, IPPROTO_UDP, NULL, 0, WSA_FLAG_OVERLAPPED))== INVALID_SOCKET)
//绑定Sender UDP端口
if(bind(m_UDPSndrSocket,(sockaddr*)&UDPSndrAddr, sizeof(UDPSndrAddr))== //填充本地UDP Sender Socket地址结构 SOCKADDR_IN UDPSndrAddr;memset(&UDPSndrAddr, 0, sizeof(SOCKADDR_IN));UDPSndrAddr.sin_family = AF_INET;UDPSndrAddr.sin_port = htons(3073);UDPSndrAddr.sin_addr.S_un.S_addr = inet_addr(“127.0.0.1”);{
} AfxMessageBox(“Failed to create UDPSocket”);return FALSE;SOCKET_ERROR)
{ AfxMessageBox(“Failed to bind UDPSndrAddr”);return FALSE;
} } //填充Receiver UDP地址
memset(&m_UDPRcvrAddr, 0, sizeof(SOCKADDR_IN));m_UDPRcvrAddr.sin_family = AF_INET;m_UDPRcvrAddr.sin_port = htons(3074);m_UDPRcvrAddr.sin_addr.S_un.S_addr = inet_addr(“127.0.0.1”);//创建UDP数据包接收线程 DWORD dwThreadId;CreateThread(NULL, 0, UdpReceiveThread, this, 0, &dwThreadId);return TRUE;// return TRUE unless you set the focus to a control void CSenderDlg::OnSysCommand(UINT nID, LPARAM lParam){
} if((nID & 0xFFF0)== IDM_ABOUTBOX){
} else { } CDialog::OnSysCommand(nID, lParam);CAboutDlg dlgAbout;dlgAbout.DoModal();
2.数据发送
void CSenderDlg::OnStartSend()
{
// TODO: Add your control notification handler code here //获取对话框数据 if(!UpdateData(TRUE))return;//初始化所有参数 if(m_pOutBuf!= NULL)delete []m_pOutBuf;m_pOutBuf = new frame[m_SendWndSize];m_iBuffered = 0;
//当前滑动窗口大小
//发送窗口左侧 m_ackExpected = 0;
m_nextFrameToSend = 0;//发送窗口右侧+1 for(int i=0;i = “ ”;int iSeq;if(!m_strFrameLost.IsEmpty()){ strcpy(tmp, m_strFrameLost);token = strtok(tmp, seps);while(token!= NULL){ iSeq = atoi(token);token = strtok(NULL, seps);if(iSeq < 0 || iSeq > MAX_SEQ) } { } m_errArray[iSeq] = LOST_ERR;AfxMessageBox(“Invalid seqno in LostFrame box, ignore it”);continue;} if(!m_strChksumErr.IsEmpty()){ strcpy(tmp, m_strChksumErr);token = strtok(tmp, seps);while(token!= NULL){ } iSeq = atoi(token);token = strtok(NULL, seps);if(iSeq < 0 || iSeq > MAX_SEQ){ } m_errArray[iSeq] = CKSUM_ERR;AfxMessageBox(“Invalid seqno in ChksumErr box, ignore it”);continue;} //启动网络层数据发送定时器 SetTimer(ID_SEND_TIMER, m_SendInterval, NULL);//窗口界面控制 GetDlgItem(IDC_SEND_WND_SIZE)->EnableWindow(FALSE); } GetDlgItem(IDC_SEND_INTERVAL)->EnableWindow(FALSE);GetDlgItem(IDC_RESEND_TIMER)->EnableWindow(FALSE);GetDlgItem(IDC_RANDOM_ERR)->EnableWindow(FALSE);GetDlgItem(IDC_MANUAL_ERR)->EnableWindow(FALSE);GetDlgItem(IDC_CHKSUM_ERR)->EnableWindow(FALSE);GetDlgItem(IDC_FRAME_LOST)->EnableWindow(FALSE);GetDlgItem(IDC_START_SEND)->EnableWindow(FALSE);GetDlgItem(IDC_STOP_SEND)->EnableWindow();CString strMsg;strMsg.Format(“%d”, m_ackExpected);GetDlgItem(IDC_BOTTOM)->SetWindowText(strMsg);strMsg.Format(“%d”, m_nextFrameToSend);GetDlgItem(IDC_TOP)->SetWindowText(strMsg);GetDlgItem(IDC_CUR_FRAME)->SetWindowText(“0”); 3.数据接收 void CReceiverDlg::OnStartRecv(){ // TODO: Add your control notification handler code here //获取对话框数据 if(!UpdateData(TRUE))return;//初始化所有参数 if(m_pInBuf!= NULL)delete []m_pInBuf;m_pInBuf = new frame[m_RecvWndSize];if(m_pArrived!= NULL)delete []m_pArrived; m_pArrived = new BOOL[m_RecvWndSize];for(int i=0;i //接收窗口左侧 m_frameExpected = 0;m_tooFar = m_RecvWndSize;//接收窗口右侧+1 for(i=0;i = “ ”;int iSeq;if(!m_strAckLost.IsEmpty()){ strcpy(tmp, m_strAckLost);token = strtok(tmp, seps);while(token!= NULL){ iSeq = atoi(token);token = strtok(NULL, seps);if(iSeq < 0 || iSeq > MAX_SEQ){ } m_errArray[iSeq] = LOST_ERR; AfxMessageBox(“Invalid seqno in LostFrame box, ignore it”);continue; } } } //启动网络层数据接收定时器,模拟接收速率限制 SetTimer(ID_RECV_TIMER, m_RecvInterval, NULL);//窗口界面控制 GetDlgItem(IDC_RECV_WND_SIZE)->EnableWindow(FALSE);GetDlgItem(IDC_RECV_INTERVAL)->EnableWindow(FALSE);GetDlgItem(IDC_AUX_TIMER)->EnableWindow(FALSE);GetDlgItem(IDC_RANDOM_ERR)->EnableWindow(FALSE);GetDlgItem(IDC_MANUAL_ERR)->EnableWindow(FALSE);GetDlgItem(IDC_EDIT_ERR_ACK)->EnableWindow(FALSE);GetDlgItem(IDC_EDIT_LOST_ACK)->EnableWindow(FALSE);GetDlgItem(ID_START_RECV)->EnableWindow(FALSE);GetDlgItem(IDC_STOP_RECV)->EnableWindow();CString strMsg;strMsg.Format(“%d”, m_iTokenCount);GetDlgItem(IDC_CUR_TOKEN)->SetWindowText(strMsg);strMsg.Format(“%d”, m_frameExpected);GetDlgItem(IDC_BOTTOM)->SetWindowText(strMsg);strMsg.Format(“%d”, m_tooFar);GetDlgItem(IDC_TOP)->SetWindowText(strMsg);GetDlgItem(IDC_CUR_RCVD)->SetWindowText(“0”); 2.3.4 结果演示与分析 1.正常发送模式测试 图2-3-4-1正常发送模式测试——发送端 图2-3-4-2正常发送模式测试——接收端 发送窗口与接收窗口都是8,序列号为从0到15,发送了8帧以后发送方收到ack7,表示接收方对发送方前8帧的确认。注意:尽管接收方辅助定时器设置为2秒,但接收方对0号帧的确认并没有在收到0帧2秒后发出,这是因为在辅助定时器超时之前,后续到来的正确的帧会重置(reset)辅助定时器,使其被重新设为2秒,因此,直到7号帧到达后,发送方窗口被占满而停止发送,此时接收方辅助定时器开始计时,并在2秒后发送ack7,表示对7号帧之前所有帧的确认。与此同时,在发送方收到ack7确认帧时,已经经过的时间为9秒,而重发定时器设置为10秒,因此并没有导致0号帧超时重传。可见,辅助定时器与超时定时器的设置是密切相关的,要想滑动窗口协议正确流畅的运行,将相关参数调整到一个合适的值很十分必要的。一个简单的规则是,与数据帧相关联的重发定时器的超时间隔应显著大于辅助定时器的超时间隔(事实上,重发定时器的值至少应大于等于辅助定时器超时间隔与发送窗口最大值之和)。 1)帧校验错测试 在做新的测试前,首先将发送端和接收端进行重置,即两端都先停止再重新开始,然后再做后续测试(如果需要,停止后可以修改相关参数)。 图2-3-4-3帧校验错测试——发送端 图2-3-4-4帧校验错测试——接收端 通过手工设置2号帧的校验和错误来模拟信道传输中的误码情况。可以看到接收方在收到2号错误帧后马上向发送方回送了一个nak2的否定应答帧,发送方在收到nak2后也立即重传了该帧,因此nak机制加速了错误帧的重传过程(否则如果接收方直接丢弃的话,就只能等到发送方2号帧的重发定时器超时后进行重传) 2)帧丢失测试 图2-3-4-5帧丢失测试——发送端 图2-3-4-6帧丢失测试——接收端 同帧校验和错误类似,帧丢失错误同样会引发接收端回送nak否定应答消息。不同的是,nak否定应答帧是在丢失帧的下一帧收到后发出的。如图5所示,由于传输过程中2号帧丢失,接收端在收到1号帧后,接下来收到了3号帧,这时,接收端知道由于某种原因2号帧丢失了,于是立即发送了2号帧的否定应答帧。在发送端收到该nak2帧后,也马上重传了该帧,nak机制同样加快了对丢失帧的重传操作。 3)确认帧丢失测试 图2-3-4-7确认帧丢失测试——发送端 图2-3-4-8确认帧丢失测试——接收端 注意,本次测试前首先调整了接收端的辅助定时器时间参数,将回送应答的时间设置为0.5秒,这样接收方每收到一帧,都会在下一帧到来之前回送上一帧的确认。如果不这样做,仍像正常测试时使用的参数那样,就不会对2号帧回送应答消息,原因在进行正常情况测试时已经讲过,因为3号帧的正确到达重置了辅助定时器,因此只有到7号帧发出后发送方因窗口满而停止,接收端辅助定时器超时,回送ack7,一次确认了7号帧之前所有的帧,这样就看不到2号应答帧丢失的效果了。 调整参数之后进行应答帧丢失测试,可以看到接收端发送2号应答帧时丢失了。发送端虽然没有收到2号帧的应答消息,但因发送窗口不满,而且也没有任何重传定时器到时,所以发送方继续发送后续的3号帧,接收端在收到3号帧后回送ack3,这次应答帧没有丢失。这样当发送端收到3号帧的应答帧时,它就知道3号帧之前的所有帧都已被正确的接收了,因此2号帧也被确认,发送窗口向后移动,再往后的传输过程就正常一应一答的进行。 4)流量控制测试 图2-3-4-9流量控制测试——接收端 图2-3-4-10流量控制测试——接收端 滑动窗口协议还有流量控制功能,即它可以保证缓慢的接收端不会被快速的 发送端发来的大量数据所淹没。如图7所示,首先调整发送定时器为500ms,即每秒发送2个数据包,接收端参数是:接收窗口大小为4,接收速率为每秒处理1个包。从图中可以看到,7号帧之前的帧还可以正常收发(这是由于令牌桶算法在短时间内有一定的处理突发流量的能力),从7号帧开始出现丢包现象(此时令牌数为0,令牌桶算法会在长时间内保证将流量限制在某一平均速率)。由于接收端处理能力不足,在丢包后无法及时向发送端回送确认,从而导致发送端窗口被占满而不能继续发送,在发送窗口内没有及时确认的帧都会被重发,这样就控制了两端收发过程的同步,使发送窗口的移动速度与接收窗口保持一致。 从接收端日志中含有accepted的记录中可以看出,尽管在发送端速度快的情况下,接收端还是可以依次按序的将数据包提交给网络层,从而也说明协议的运行是正确的。 计算机网络 作业一 一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内。 1.采用全双工通信方式,数据传输的方向性结构为(A) A.可以在两个方向上同时传输 B.只能在一个方向上传输 C.可以在两个方向上传输,但不能同时进行 D.以上均不对 2.采用异步传输方式,设数据位为7位,1位校验位,1位停止位,则其通信效率为(B) A.30%B.70% C.80%D.20% 3.T1载波的数据传输率为(D) A.1MbpsB.10Mbps C.2.048MbpsD.1.544Mbps 4.采用相位幅度调制PAM技术,可以提高数据传输速率,例如采用8种相位,每种相位取2种幅度值,可使一个码元表示的二进制数的位数为(D) A.2位B.8位 C.16位D.4位 5.若网络形状是由站点和连接站点的链路组成的一个闭合环,则称这种拓扑结构为(C) A.星形拓扑B.总线拓扑 C.环形拓扑D.树形拓扑 6.采用海明码纠正一位差错,若信息位为4位,则冗余位至少应为(B) A.2位B.3位 C.5位D.4位 7.在RS-232C接口信号中,数据终端就绪(DTR)信号的连接方向为(A) A.DTE→DCEB.DCE→DTE C.DCE→DCED.DTE→DTE 8.RS—232C的机械特性规定使用的连接器类型为(B) A.DB—15连接器B.DB—25连接器 C.DB—20连接器D.RJ—45连接器 9.采用AT命令集对MODEM进行编程设置,现要让MODEM完成“用音频先拨外线(拨0),然后停顿2秒再拨62753321”的操作,则应向MODEM发出的AT命令为(C) A.ATDP0,62753321B.ATDT,62753321 C.ATDT0,62753321D.ATDT0262753321 10.RS—232C的电气特性规定逻辑“1”的电平范围分别为(B) A.+5V至+15VB.-5V至-15V C.0V至+5VD.0V至-5V 11.若BSC帧的数据段中出现字符串“A DLE STX”,则字符填充后的输出为(C) A.A DLE STX STXB.A A DLE STX C.A DLE DLE STXD.A DLE DLE DLE STX 12.若HDLC帧的数据段中出现比特串“01011111001”,则比特填充后的输出为(B) A.010011111001B.010111110001 C.010111101001D.010111110010 13.对于无序接收的滑动窗口协议,若序号位数为n,则发送窗口最大尺寸为(C) A.2-1B.2 C.2D.2n-1 14.以下各项中,不是数据报操作特点的是(C) A.每个分组自身携带有足够的信息,它的传送是被单独处理的B.在整个传送过程中,不需建立虚电路 n-1nn C.使所有分组按顺序到达目的端系统 D.网络节点要为每个分组做出路由选择 15.TCP/IP体系结构中的TCP和IP所提供的服务分别为(D) A.链路层服务和网络层服务B.网络层服务和运输层服务 C.运输层服务和应用层服务D.运输层服务和网络层服务 16.对于基带CSMA/CD而言,为了确保发送站点在传输时能检测到可能存在的冲突,数据帧的传输时延至少要等于信号传播时延的(B) A.1倍B.2倍 C.4倍D.2.5倍 17.以下各项中,是令牌总线媒体访问控制方法的标准是(B) A.IEEE802.3B.IEEE802.4 C.IEEE802.6D.IEEE802.5 18.采用曼彻斯特编码,100Mbps传输速率所需要的调制速率为(A) A.200MBaudB.400MBaud C.50MBaudD.100MBaud 19.若信道的复用是以信息在一帧中的时间位置(时隙)来区分,不需要另外的信息头来标志信息的身分,则这种复用方式为(C) A.异步时分复用B.频分多路复用 C.同步时分复用D.以上均不对 20.由于帧中继可以使用链路层来实现复用和转接,所以帧中继网中间节点中只有(A) A.物理层和链路层B.链路层和网络层 C.物理层和网络层D.网络层和运输层 二、填空题(每空0.5分,共30分) 1、计算机网络的发展和演变可概括为 面向终端的计算机网络、计算机—计算机网络和开放式标准化网络三个阶段。 2、计算机网络的功能主要为硬件资源共享、软件资源共享、用户之间的信息交换。 3、串行数据通信的方向性结构有三种,即单工、半双工和 全双工。 4、模拟信号传输的基础是载波,载波具有三个要素,即 幅度、频率 和 相位。数字数据可以针对载波的不同要素或它们的组合进行调制,有三种基本的数字调制形式,即 调幅、调相和调频。 5、最常用的两种多路复用技术为频分多路复用技术FDM和时分多路复用技术TDM,其中,前者是同一时间同时传送多路信号,而后 者是将一条物理信道按时间分成若干个时间片轮流分配给多个信号使用。 6、HDLC有三种不同类型的帧,分别为 信息帧(I帧)、监控帧(S帧)和 无编号帧(U帧)。 7、X.25协议的分组级相当于OSI参考模型中的网络 层,其主要功能是向主机提供多信道的虚电路服务。 8、到达通信子网中某一部分的分组数量过多,使得该部分乃至整个网络性能下降的现象,称为拥塞现象。严重时甚至导致网络通信业 务陷入停顿,即出现 死锁现象。 9、OSI的会话层处于运输层提供的服务之上,为表示层提供服务。 10、会话层定义了两类同步点,分别为主同步点和次同步点。其中后者用于在一个对话单元内部实现数据结构化。 11、OSI表示层的主要功能为语法转换、语法协商和连接管理。 12、FTAM是一个用于传输、访问和管理开放系统中文件的信息标准。它使用户即使不了解所使用的实际文件系统的实现细节,也能对 该文件系统进行操作。 13、在TCP/IP层次模型中与OSI参考模型第四层(运输层)相对应的主要协议有TCP(传输控制协议)和UDP(用户数据报协议),其中后者提供无连接的不可靠传输服务。 14、在TCP/IP层次模型的第三层(网络层)中包括的协议主要有IP、ICMP、ARP 及 RARP。 15、载波监听多路访问CSMA技术,需要一种退避算法来决定避让的时间,常用的退避算法有非坚持、1-坚持和 P-坚持三种。 16、ATM的信元具有固定的长度,即总是53字节,其中5字节是信头,48 字节是信息段。 17、WWW上的每一个网页都有一个独立的地址,这些地址称为 统一资源定位器 HRL。 18、信道是信号的传输通道,它分为_物理 和_逻辑_。 19、数据通信有两种方式:_串行_通信和_并行_通信。 20、通信过程中,人们为了能高效合理的利用资源,常采用__多路复用技术___技术,使多路数据信号共用一条电路进行传输。 21、在众多的传输媒介中,最适宜于短距离传输,在局域网中广泛安装的是__双绞线___。 22、计算机网络的基本要素是__网络节点__、_网络链路__和子网。 23、在计算机、打印机中常用一种电子电路板_网卡(网络适配器或网络接口卡)_,以便设备能与网络连接并传送数据。 24、__对等网络_网络没有专用的服务器,在网络中的每一台计算机都可以既充当服务器又充当客户机进行互相访问。 25、在OSI 参考模型中负责执行数据格式的编码和转化功能的是__表示层__。 26、TCP/IP协议的体系结构分为__应用层__、_传送层_、网络层和_网络接口层__ 27、子网掩码为1的部分对应于IP地址的_网络与子网部分_,子网掩码为0的部分对应于IP地址的__主机部分__。 28、__总线型__拓扑结构的网络属于共享信道的广播式网络。 29、_加密解密技术__是网络安全技术的基础.30、用户从目的邮件服务器上读取邮件使用的协议是__POP___和IMAP。 三、名词解释(本大题共3小题,每小题4分,共12分) 1.信道容量:信道的最大数据传输速率,是信道传输数据能力的极限,单位为位/秒 2.多路复用(Multiplexing):在数据通信或计算机网络系统中,传输媒体的带宽或容量往往超过传输单一信号的需求,为了有效地利用通信线路,可以利用一条信道传输多路信号,这种方法称为信道的多路利用,简称多路复用。 3.奇偶校验码:是一种通过增加1位冗余位使得码字中“1”的个数恒为奇数或偶数的编码方法。这是一种检错码。 四、简答题(本大题共2小题,每小题6分,共12分) 1.简述Novell NetWare对文件服务器的共享硬盘提供的5级可靠性措施。 答:.第一级:对硬盘目录和文件分配表(FAT)的保护; 第二级:对硬盘表面损坏时的数据保护; 第三级:采用磁盘镜像的方法实现对磁盘驱动器损坏的保护; 第四级:采用磁盘双工,对磁盘通道或磁盘驱动器损坏起到保护作用。 第五级:采用事务跟踪系统TTS的附加容错功能。 2.简述使用“拨号网络”连接Internet所需进行的准备工作。 答:(1)选择合适的ISP,通过ISP获取Internet帐号; (2)准备一个调制解调器和一条能拨通ISP的电话线; (3)安装“拨号网络”; (4)安装TCP/IP协议并将其绑定到“拨号网络适配器”; (5)输入TCP/IP相关信息; (6)用“拨号网络”建立与ISP的连接。 五、计算题(本大题共2小题,每小题8分,共16分) 1.速率为9600bps的调制解调器,若采用无校验位、一位停止位的异步传输方式,试计算2分钟内最多能传输多少个汉字(双字节)? 解:①2分钟传输的位数为9600bps×120=1152000位 ②由于每个汉字用双字节表示,所以在给定的异步传输方式下每个汉字需传输的位数为 (8+1+1)×2=20位 ③2分钟内传输的汉字数为1152000位÷20位=57600(个) 2.长2km、数据传输率为10Mbps的基带总线LAN,信号传播速度为200m/μs,试计算: (1)1000比特的帧从发送开始到接收结束的最大时间是多少? 解:(1)1000bit/10Mbps+2000m/200(m/μs)=100μs+10μs=110μs (2)若两相距最远的站点在同一时刻发送数据,则经过多长时间两站发现冲突? 解:(2)2000m/200(m/μs)=10μs 六.操作题(每题5分,共10分) 1.浏览器的主要访问功能,可以通过点击“工具栏”上的按钮来实现,点击__后退____可以返回前一页,点击_前进_可以进入下一页,点击_停止_可以终止当前显示页的传输,点击__刷新_可以更新当前显示页,点击_主页_可以返回浏览器预定的起始页。 2.安装TCP/IP协议的步骤如下:打开“控制面板”中的“网络”图标,进入“网络”对话框,在_配置__选项卡中点击“添加”按钮,进入“请选择网络组件类型”对话框,选择_协议__,点击“添加”按钮,再在“选择网络协议”对话框中的_厂商_栏内选“Microsoft”,在“网络协议”中选TCP/IP__。 中南大学 一、申请条件 1.拥护中国共产党的领导,具有良好的思想品德和政治素质,遵纪守法,在校期间未受过任何法纪处分,身心健康。 2.经教育部批准具有推荐免试攻读硕士学位研究生资格的高校2012届普教应届本科毕业生,并取得所在学校硕士研究生推荐免试资格。 3、“985工程”高校或者设有研究生院的高校以及“高水平大学优秀研究生生源互推联盟”18所成员高校的优秀应届本科毕业生优先选拔和接收。 4.临床医学硕士(1051)一级学科所涵盖的各二级学科仅接收临床医学或相关(相近)专业的应届本科毕业生,不接收中医类专业的应届本科毕业生。 5、综合素质高,创新能力强,具备良好的硕士(博士)研究生培养潜质,学风端正。4.“985”工程高校和设有研究生院的高校优秀应届本科毕业生(文化课总评成绩在专业年级排名前5%),可在我校理、工、医(非临床医学)所涵盖的国家重点学科专业(学术学位)申请直接攻读博士学位。须本人在申请推免资格同时提出直博申请,学院经过考核推荐,最终由学校研究生招生领导小组审核同意后确定是否取得直博资格,研招办于10月20日左右发放《直博接收函》,后续工作另行通知。 二、被录取的推免生优惠待遇 1、所有推免生录取时均确定为全额奖学金(学费全免),并享受助学金。被录取为直博生的,入学后即享受博士研究生的奖助学金。 2、我校是实施“国家建设高水平大学公派研究生项目”的首批高校之一(全国约60所),指标每年不少于100人。推免生具有公派留学优先推荐资格。 3、“985工程”或设研究生院的高校、且成绩在本专业排名前10%,或者“211工程”高校、且成绩在本专业排名前5%的优秀应届本科毕业生,2012年9月入学报到注册后,给予1000元/人的奖励。 三、申请程序和提交材料 (一)所有申请者必须通过我校“综合选拔(含推荐免试)研究生报名网站”(将在8月底左右开通,请注意我校研究生院网站通知)提交个人申请。 (二)网上申请报名和提交纸质申请材料时间 1、网上申请报名时间:8月30日—9月25日。 2、提交纸质申请材料时间:9月5日—9月30日。 (三)申请者同时须提交下列纸质申请材料: 1、所在学校教务部门出具的硕士研究生推荐免试资格证明(可以先参加我校的复试与选拔,在取得我校拟录取资格后补交推免资格证明)。 2、通过“综合选拔(含推荐免试)研究生报名网站”提交申请后,下载打印《中南大学2012年综合选拔攻读硕士学位研究生申请表(含推荐免试)》一份,并由所在学校或院系的教务部门加盖公章。 3、在校历年学习成绩单一份,并由所在学校或院系的教务部门加盖公章。 4、有学术科研成果(包括公开发表论文、出版著作、获得专利、获得学术科技奖项、承担课题或者其他具有学术水平的工作成果)者,提供由所在学校或院系的教务部门加盖公章的复印件一份(原件在复试时出具)。 5、大学英语四级或六级考试合格证书或者成绩单复印件一份,并由所在学校或院系的教务部门加盖公章(原件在复试时出具)。 6、有获得各类荣誉、表彰、奖励证书者,提供由所在学校或院系教务部门加盖公章的复印件一份(原件在复试时出具)。申请人提供的材料必须真实。凡弄虚作假者,一经发现,即取消复试或拟录取资格。上述材料请用挂号信邮寄(送)至我校相关二级招生单位,通信地址:湖南省长沙市中南大学XX学院(研究所、医院)研招工作联系人(姓名)收,并在信封左下角注明“申请推免(或综合选拔)材料”。二级招生单位联系人和联系方式请见“研究生招生二级单位一览表” 四、选拔和录取程序 1、资格初审:相关学院推免生工作领导小组对申请人材料进行评审,认为合格者,及时通知申请人,给予其复试资格。 2、复试:申请人按照学院的要求进行复试(申请人要及时查看学院网站通知或者咨询学院研招工作联系人,了解复试的相关要求)。 3、拟录取:复试合格者,由相关学院出具《复试结果通知单》。申请人凭《复试结果通知单》和所在学校出具的《推荐免试资格证明》,到我校研招办领取《拟录取接收函》(特殊情况可由学院代领)。 4、网上报名与现场确认:拟录取人凭我校出具的《录取接收函》到所在学校领取省级高校招生办公室核发的报名校验码,凭校验码于国家规定的时间到“中国研究生招生信息网”(http://yz.chsi.com.cn)进行网上报名;并于规定时间到网上选定的报名点进行现场确认,办理正式报名手续。未进行网上报名和现场确认的申请人,不能被录取。网上报名以后,须将正式加盖省级高校招生办公室公章的《推荐免试登记表》寄送我校研招办。 5、资格复审:在发出录取通知书之前,推免生出现下列情形之一的,取消录取资格:(1)不能取得本科毕业证和学位证; (2)毕业论文或毕业设计的成绩不能达到“良”; (3)取得初录资格后,本科必修、选修等课程考试不及格; (4)取得初录资格后,受到法纪处分。 6、录取为我校直博生的学生,还需在我校博士生报名期间办理博士生报名手续,具体事宜另行通知。 中南大学研究生院招生办(研招办)通信地址:湖南省长沙市中南大学校本部三办公楼研究生院招生办(邮编410083),咨询电话:0731-88876806,传真:0731-88876474。 热忱欢迎全国广大有志青年来我校深造! 附件:中南大学2012年综合选拔(含推荐免试)攻读硕士学位研究生申请表 中南大学研究生院招生办 2011年7月 2012中南大学MBA复试题目(回忆版) 上午:面试 英文题目:你的家乡 你的工作 你的家庭 你怎么来的长沙 路程要多久 你对长沙的观感 为什么考MBA 中文题目:你专业知识方面的最新动态 (计算机:最新的互联网技术,管理:管理学知识,电子:最新的技术,财税:相关改革) 你工作方面相关知识的最新动态 (税务:税收改革,移动:4g,和联通的竞争,银行:汇率,人民币贬值。电力:电力改革) 关于你的大学 (你大学的你的专业有什么特色) 为什么考MBA 下午:政治笔试(六选四,60分钟) 1,欧洲债务危机的成因和影响 2,社会主义核心价值的内容和意义 3,对食品安全问题的看法 4,什么是低碳经济,为什么要发展低碳经济? 5,教育领域的4%指的是什么,有什么作用 6,对网络舆情监督的看法。第三篇:计算机网络作业
第四篇:中南大学
第五篇:2012中南大学MBA复试题目(模版)