收藏 分销(赏)

电子科技大学网络编程试卷及答案(A).doc

上传人:二*** 文档编号:4463505 上传时间:2024-09-23 格式:DOC 页数:11 大小:116KB 下载积分:5 金币
下载 相关 举报
电子科技大学网络编程试卷及答案(A).doc_第1页
第1页 / 共11页
本文档共11页,全文阅读请下载到手机保存,查看更方便
资源描述
(完整word版)电子科技大学网络编程试卷及答案(A) 电子科技大学2010 -2011学年第 2学期期 末 考试 A 卷 课程名称:__ 计算机网络编程 考试形式: 闭卷 考试日期: 2011年 月 日 考试时长:120分钟 课程成绩构成:平时 5 %, 期中 5 %, 实验 40 %, 期末 50 % 本试卷试题由____3 _部分构成,共__7__页。 题号 一 二 三 四 五 六 七 八 九 十 合计 得分 得 分 一、 填空题(共20分,共 10题,每空1分) 1. 物理地址(MAC)存在于_____________层,IP地址存在于_____________层,可以将IP地址分为_______和主机号。 2. 要实现网络服务的可靠性需要提供:_______、超时、重传和_______。 3. 发起对等通信的应用程序称为_______,等待接收客户通信请求的程序称为_______。 4. 在TCP/IP使用中,__________________的模式占有主导地位,其动机来源于_______________问题。 5. 一个进程包含一段___________和至少一个___________。 6. 在UNIX系统中创建新进程,需要调用系统函数_______。 7. TCP/IP协议定义的端点地址包括_______和_______。 8. 不保存任何状态信息的服务器称为________________服务器,反之则称为______________服务器。 9. _______是指真正的或表面的同时计算,一个单处理机多用户的计算机可以通过_______机制实现表面的同时计算,而在多处理机下可以实现真正的同时计算。 10. TCP提供面向_______的服务,而UDP提供_______的服务。 得 分 二、判断题(共20分,共 10题,每题2 分) 1. 有些场合下只能使用UDP协议进行网络通信 ( ) 2. 服务器使用并发处理可以完全防止死锁 ( ) 3. 发起对等通信的应用程序为服务器 ( ) 4. TCP/IP标准规定了通信双方在什么时间以及用什么方式交互 ( ) 5. 客户程序可以将服务器的IP地址或域名说明为常量 ( ) 6. TCP提供流量控制和拥塞控制 ( ) 7. 并发的、面向连接的服务器可以有n个不同的进程 ( ) 8. 只能在TCP通信时使用connect系统调用 ( ) 9. TCP/IP地址族可以表示为PF_INET ( ) 10. 面向连接的服务易于编程。 ( ) 三.问答题(三——六): 得 分 三、请给出并发的面向连接服务器(多进程)设计算法,图示出进程结构,并说明这种类型的服务器的优缺点。( 共15分) 得 分 四、试分析面向连接的服务器和无连接的服务器各自的优缺点。 ( 共10分) 得 分 五、将一组大程序分解为一系列的子程序/过程的好处是什么?试分析,在客户程序的设计实现时,为什么为什么要先抽象为connectTCP(machine, service)和connectUDP(machine, service)两个模块,而这两个模块又具有共同的底层模块connectsock?( 共15分) 得 分 六、在I/O复用模型的关键是熟练掌握select函数,该函数的原型是 int select(int maxfd, fd_set *readset, fd_set *writeset, fd_set *exceptset, const struct timeval *timeout); 1、 请详细解释select函数的参数的意义,以及执行结果。(10分) 2、 如何利用select函数构造一个最简单的多协议服务器,同时提供TCP和UDP服务?画出进程结构图。(10分) 电子科技大学2010 -2011学年第 2学期期 末 考试 A 卷 答案及评分细则 课程名称:__ 计算机网络编程 考试形式: 闭卷 考试日期: 2011年 月 日 考试时长:120分钟 课程成绩构成:平时 5 %, 期中 5 %, 实验 40 %, 期末 50 % 一、填空题 1、数据链路、网络层、网络号 2、检错、序号 3、客户、服务器 4、客户/服务器、通信汇聚点 5、地址空间、执行的线程 6、fork 7、IP地址,端口号 8、无状态、有状态 9、并发、分时 10、连接、无连接 二、判断题 √×××√√××√× 三、并发的面向连接的服务器的设计算法如下 面向连接的服务器在多个连接之间实现并发(不是在各个请求之间) ① 主1、创建套接字并将其绑定到所提供服务的熟知地址上。让该套接字保持为面向连接(1分) ② 主2、将该端口设置为被动模式(1分) ③ 主3、反复调用accept以便接收来自客户的下一个连接请求,并创建新的从线程或者进程来处理响应(1分) ④ 从1、由主线程传递来的连接请求开始(1分) ⑤ 从2、用该连接与客户进行交互;读取请求并发回响应(1分) ⑥ 从3、关闭连接并退出(1分) 进程结构:(5分) 优点:一个时刻可以处理多个请求,性能好 缺点:实现复杂,难以构建和设计 (答到关键点给3分,能展开说给4分) 四、 1. 面向连接的服务的优点(3分): 易于编程 自动处理分组丢失,分组失序 自动验证数据差错,处理连接状态 面向连接的服务的缺点(3分): ① 对每个连接都有一个单独的套接字,耗费更多的资源 ② 在空闲的连接上不发送任何分组 ③ 始终运行的服务器会因为客户的崩溃,导致无用套接字的过多而耗尽资源 2. 无连接服务器优点:没有资源耗尽问题(2分) 缺点(2分):需要自己完成可靠通信问题,必要时,需要一种自适应重传的复杂技术,需要程序员具有相当的专业知识。对于可靠通信的场合,尽量使用tcp 五、 一个模块化的程序比一个等价的单个程序容易理解、排错和修改。(1分)如果程序员认真的设计了过程,还可以在其他程序中重新使用这些过程。(1分)。另外,仔细选择过程可以使程序更容易移植。(1分) 过程通过将细节隐藏起来,提高了程序员所用语言的级别。(1分) 构造客户和服务器的时候,使用网络服务的程序包括了一大堆枯燥的细节,(如端点地址等)使用过程来隐藏细节将减少出错的机会。(1分) 使用过程(以及它所提供的较高级的的操作)可以避免重复,使用者可以在许多程序中使用他们,不需要再考虑实现的细节。(1分), 如能回答:多数代码需要分配套接字、绑定地址并构成网络连接,这些重复出现因而可以重用;TCP/IP网络是异种网互联,代码需要运行在不同机器的体系结构上,因而便于移植,可加1-2分。 抽象:客户端应用程序请求服务只能通过传输层,(1分)而传输层有两种协议TCP和UDP,因此抽象的时候可分为两种情况。(1分) 参数抽象如下:连接需要指明服务器的IP地址和服务类型(端口号)(1分) 客户端采用TCP和UDP共同的步骤都是获得套接字ID,因此可以考虑将获得套接字ID的过程合并,仅仅采用参数来标明到底采用何种传输层协议。(2分)同时仍然需要传递的参数为服务器的IP地址和服务类型(端口号),所以将底层共用一个过程connectsock。(2分) 六、 maxfd参数是所以监视的描述字中最大的描述字加1。中间三个参数分别表示监视的不同条件的描述字集合(2分)。其中readset为读描述字集合,writeset为写描述字集合,execptset为异常描述字集合。Timeout参数为select函数最长睡眠时间。(3分) Select函数有三种执行情况(5分,每点1分): l 永远等待下去:仅在有一个或以上描述字准备好i/o才返回,为此,我们将timeout设置为空指针。 l 等待固定时间:在有一个描述字准备好时返回,但不超过由timeout参数指定的秒数和微秒数。 l 根本不等待,检查描述字后立即返回,这称为轮询。这种情况下,timeout必须指向结构timeval,且定时器的值必须为0。 Select函数的返回值如下: l 如果在指定超时值到达之前有一个或多个描述字满足条件,则函数返回值大于零; l 如果超时时间到时,没有描述字满足条件,函数返回值为0; l 如果select函数阻塞过程中,发生错误,函数返回值为-1; 多协议服务器可以由一个执行线程构成,该线程既可以在TCP也可以在UDP上使用异步IO来处理通信。(答出该点可得3分)服务器最初打开两个套接字,一个使用无连接的传输,一个使用面向连接的传输,使用异步IO等待两个套接字之一就绪。(答出该点可给3分,能详细描述过程酌情加分至5分,能图示出进程结构可给满分) 第 11 页 共 11页
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服