合肥学院TCPIP网络协议编程期末试卷A卷_第1页
合肥学院TCPIP网络协议编程期末试卷A卷_第2页
合肥学院TCPIP网络协议编程期末试卷A卷_第3页
合肥学院TCPIP网络协议编程期末试卷A卷_第4页
合肥学院TCPIP网络协议编程期末试卷A卷_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第 1 页,共 7 页 合肥学院合肥学院 20201414 至至 20201515 学年第学年第 二二 学期学期 网络协议编程 课程考试课程考试(a)卷卷 系系 级级 专业专业 学号学号 姓名姓名 题号 一 二 三 四 五 六 七 八 九 十 总 分 得分 阅卷 一、选择题: (2 分10=20 分) 1telnet 使用( a )端口来建立连接 a. tcp 端口 23 b. udp 端口 23 c. arp 端口 25 d. icmp 端口 25 2. ping 命令使用的协议为( d ) a. tcp b. udp c. arp d. icmp 3. 下面模型使用线程池处理异步 i/o

2、请求的是( d ) aselect 模型 bwsaasyncselect 模型 cwsaeventselect 模型 doverlapped i/o 完成例程模型 4. 目前流行的 internet 通信协议是( d ) a. html b. http c. arpa d. tcp/ip 5. 82/25 的网络号是多少?( c ) a. b. c. 28 d. 55 6. ftp 客户机向服务器发送 pass 命令,ftp 服务器返回的响应代码为( a )才表示用户名和密码均正

3、确并登陆成功。 a. 230 b. 331 c. 332 d. 420 7.icmp 时间戳请求报文的报文类型为( c ) a. type=8 b. type=3 c. type=13 d. type=14 (试卷首页) 大题得分 装 订 线 第 2 页,共 7 页 8.阻塞模式相比较非阻塞模式( a ) a.开发过程更加简单 b.在大量建立好的套接字线程之间进行通信时比较容易 c.需要写更多的代码 d.在数据收发量不均、时间不定的时候,具有更明显的优势 9.数据包的捕获流程为( a ) a. pcap_findalldevs - pcap_open_live - pcap_compile -

4、 pcap_setfilter - pcap_loop - pcap_close b. pcap_findalldevs - pcap_compile - pcap_open_live - pcap_setfilter - pcap_loop - pcap_close c. pcap_findalldevs - pcap_open_live - pcap_compile - pcap_setfilter - pcap_close d. pcap_findalldevs - pcap_open_live - pcap_compile - pcap_loop - pcap_close 10.在vi

5、sual c+中, 通常使用winsock2.2实现网络通信的功能, 则需要引用头文件为 ( b ) a. winsock.h b. winsock2.h c. winsock2_2.h d. winsock2.2.h 二、填空题(1 分20=20 分) 1.在计算机中使用无符号长整型数(unsigned long)来存储和表示 ip 地址,而且分为_网络字节顺序_和_主机字节顺序_两种格式。 2.socket 编程可以分为_阻塞_ _和_非阻塞 _两种开发模式。 3.npf 是 winpcap 的核心部分,也是 winpcap 的核心组件,它可以实现数据包的捕获、过滤、统计、转储等功能。 4

6、.在 visual c+中使用结构体_ in_addr_来保存网络字节顺序格式的 ip 地址。 5.常见的网络编程技术有:直接网卡编程技术、基于 packet driver 的网络编程技术、基于 ndis 的网络编程技术、基于 libpcap/winpcap 的网络编程技术、 socket 网络编程技术_和 基于.net 框架的网络编程技术 。 6.ftp 用于建立控制连接的端口为 21 ;当需要传输文件数据时,客户端程序将连接服务器的端口 20 。 7.根据基于的底层协议不同,socket 开发接口可以提供_面向连接_和_面向无连接_两种服务方式。 8.两个主机使用 tcp 进行通信可以分为

7、 3 个阶段,即 建立连接阶段 , _数据传输阶段_和 断开连接释放资源阶段 。 9.在 wsaasyncselect 模型中,应用程序可以在一个 socket 上接收以_ windows 消息_为基础的网络事件通知。 10.在 select()函数中使用_ fd_set_结构体来管理多个 socket。 三、简答题(6 分4=24 分) 1.描述 tcp/ip 协议族的体系结构。 (1)网络接口层 (2)网际层(网络层) (3)运输层(传输层) (4)应用层 大题得分 大题得分 小题得分 第 3 页,共 7 页 评分标准: 1、每个 1.5 分,共 6 分。 2.简述 socket 提供的三

8、种类型套接字以及它们各自的特点是? 流式套接口(sock_stream)提供面向链接的、可靠的数据传输服务,可以无差错地发送和接受数据。流式套接字在传输层是通过 tcp 协议实现的。 数据报套接口(sock_dgram)提供了一种无连接、不可靠的双向数据传输服务。数据报套接口在传输层通过 udp 协议实现。 原始套接口(sock_raw)提供了读写 ip/icmp/igmp、构造特殊的 ip 报文的功能。 评分标准: 1、 能回答出三种类型名称的,各得 1 分,共 3 分,写出中文或英文的名称均可; 2、 能正确描述三种套接字的特点的,每个 1 分,共 3 分。 3.http 请求中包含请求行

9、、报头、空白行和请求正文,请简述的消息报头的四个种类? 其中包括:普通报头(只用于传输消息,并不用于被传输的实体) 请求报头 (允许客户端向服务器端传递请求的附加信息以及客户端自身的信息) 响应报头(允许服务器传递不能放在状态行中的附加响应信息,以及关于服务器的信息和对 request-uri 所标识的资源进行下一步访问的信息) 实体报头(请求和响应消息都可以传送一个实体) 评分标准: 1、每项 1.5 分,共 6 分。 4.简述 ftp 的两种连接模式及两种连接模式的特点。 答:ftp 支持两种运行模式,即主动模式和被动模式,它们的区别在于控制如何打开第 2个连接。 1主动模式:在主动模式下

10、,客户端向服务器发送自己用于数据连接的 ip 地址和端口号,然后由服务器程序打开数据连接。 2被动模式:当客户端在防火墙后面或者无法接收 tcp 连接时,通常建议采用被动模式。在被动模式下,服务器向客户端发送自己用于数据连接的 ip 地址和端口号,则客户端打开数据连接。 评分标准: 1、 能表述出两种模式的,各得 1 分,共 2 分; 2、 能表述清楚两种模式的特点,各得 2 分,共 4 分。 小题得分 小题得分 小题得分 大题得分 装 订 线 第 4 页,共 7 页 四、编程题(2 分10=20 分) 通常我们使用 winsock2.2 来进行网络编程, 下面是我们在网络协议编程中经常使用的

11、模版范例,请根据你所学的知识填空。其中在注释符号后面的填空需要填写的内容是程序的注释,在代码中间所要填写的是开发过程中所需要使用到的函数或变量等。 #include stdafx.h #include #include (1) #pragma comment(lib, (2)) int main(int argc, char* argv) const int buf_size = 64; wsadata wsd; /wsadata 变量 socket sserver; /服务器套接字 socket sclient; /客户端套接字 sockaddr_in addrserv; /服务器地址 ch

12、ar bufbuf_size; /接收数据缓冲区 int retval; /返回值 if (wsastartup(makeword(2,2), &wsd) != 0) /(3) printf(失败!); return 1; /(4) ,填写下面一句的注释 sserver = socket(af_inet, sock_stream, ipproto_tcp); if(invalid_socket = sserver) printf(失败!n); wsacleanup(); return -1; /服务器套接字地址 addrserv.sin_family = (5); addrserv.s

13、in_port = htons(4999); addrserv.sin_addr.s_addr = inaddr_any; /(6) retval = bind(sserver, (lpsockaddr)&addrserv, sizeof(sockaddr_in); if(socket_error = retval) printf(失败!n); 第 5 页,共 7 页 closesocket(sserver); wsacleanup(); return -1; /开始监听 retval = (7) (sserver, 1); if(socket_error = retval) prin

14、tf(监听任务失败!n); closesocket(sserver); wsacleanup(); return -1; /接受客户端请求 sockaddr_in addrclient; int addrclientlen = sizeof(addrclient); /接受链接 sclient =(8)(sserver,(sockaddr far*)&addrclient, &addrclientlen); if(invalid_socket = sclient) printf(接受链接启动失败!n); closesocket(sserver); wsacleanup(); r

15、eturn -1; while(true) /接收客户端数据 zeromemory(buf, buf_size);/清空 retval =(9)(sclient, buf, buf_size, 0);/接收数据 if (socket_error = retval) printf(接受客户端数据失败!n); closesocket(sserver); closesocket(sclient); wsacleanup(); return -1; if(buf0 = 0) break; printf(客户端发送的数据:%sn,buf); 装 订 线 第 6 页,共 7 页 printf(向客户端发送

16、数据:%sn,buf); (10)(sclient, buf, strlen(buf), 0); /发送数据 closesocket(sserver); /关闭套接字 closesocket(sclient); /关闭套接字 wsacleanup(); /释放套接字资源; return 0; 答案: 1winsock2.h 2 ws2_32.lib 3初始化套结字动态库 4创建套接字 5af_inet 6绑定套接字 7listen 8accept 9recv 10send 评分标准: 1、每个填空 1 分,共 10 分,要求程序关键字的大小写均需要填写正确,中文注释的地方只要意思答对即可。 五、综合题(16 分*1=16 分) 1、我们在浏览互联网信息的时候使用的最多的方式就是使用浏览器(如 ie、chrome、fixfox) ,实际上浏览器就是我们通常所说的 www 客户端,请运用你所学的网络协议编程知识,阐述请从软件设计到软件的开发、调试、运行的过程中的关键设计流程以及知识点。 本题

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论