计算机网络期末考试题及答案 下载本文

25:SMTP。 80:HTTP。

2. 写出TCP/IP应用层主要协议(3个以上)。

HTTP、FTP、TLENET、SMTP、SNMP。

3.简要叙述FTP的主要工作过程、两种连接模式及其区别?

FTP采用C/S模型,使用TCP建立连接。FTP建立了两条通信链路,分别是控制连接和

数据连接。服务端,预分配两个端口号。其中,20用于发送和接收FTP数据;21用于发送和接收FTP的控制信息。客户端发出请求时将动态分配端口号,选择范围为1 024~65 535。

有两种传输模式:主动传输模式(Active)和被动传输模式(PASSIVE)。主动传输模式下,FTP服务器使用20与客户端的临时端口连接,并传输数据。被动传输模式下,FTP服务器打开一个暂态端口等待客户端对其进行连接。

4.HTTP的基本工作原理是什么?

客户机与服务器建立连接。

建立连接后,客户机发送一个请求给服务器。 服务器接到请求后,给予相应的响应信息。 客户端接收服务器返回的信息,然后断开连接。 3. TELNET协议的工作原理是什么?

本地与远程主机通过TCP建立连接。

将本地终端上输入的字符以NVT格式传送到远程主机。

将远程主机输出的NVT格式的数据转化为本地所接受的格式送回本地终端。 本地终端对远程主机撤消连接。 4. 概述UDP协议的特点。

UDP是一个无连接协议,

可同时向多个客户机传输相同的消息。 UDP信息包的标题短,开销小。 吞吐量不受拥挤控制算法的调节。 UDP使用尽最大努力交付方式。 UDP是面向报文的。 7. UDP与 TCP的异同点?

相同点:

都处于网络层,都是传输层协议,功能都属于保证网络层数据的传输。双方通信都

需要开放端口。

-可编辑修改-

不同点:

TCP的传输是可靠的。 UDP的传输是不可靠的。 TCP是基于连接的协议, UDP是面向非连接的协议。

TCP是一种可靠的通信服务,负载相对而言比较大, UDP是一种不可靠的网络服务,负载比较小。

TCP包括的字段比UDP多。

TCP提供可靠连接,UDP不提供可靠性。

TCP传输速度很慢,UDP传输速度快。

TCP适用于那些对完整性要求高于性能要求的环境,UDP反之。 1、Winsock是什么?

Windows Sockets是Windows下的网络编程接口。 2、TCP/IP的socket提供哪三种类型的套接字?

①流式套接字(SOCK--STREAM):该类套接字提供了面向连接的、可靠的、数据无错并且无重复的数据发送服务,TCP使用该类接口。

②数据报式套接字(SOCK--DGRAM):数据报式套接字提供了面向无连接的服务,不提供正确性检查,也不保证各数据包的发送顺序,UDP使用该类套接字。

③原始套接字(SOCK--RAW):直接针对协议的较低层(如IP、TCP、UDP等)直接访问。 3、请说明在面向连接的套接字程序设计中,进行网络通信程序设计时,客户机和服务器端socket函数的基本调用流程图。

服务器先启动,

调用socket()建立一个套接字,

调用bind() 将套接字与本地地址连接在一起,

调用listen()使套接字做好侦听的准备,并规定它的请求队列的长度, 调用accept()来接受连接。

建立连接后,客户机和服务器间通过调用read()和write()来发送和接收数据。 结束后用close()关闭连接。

4、简述套接字的非阻塞模式的含义,针对非阻塞模式Winsock提供了哪些不同的套接字I/O模型对I/O进行管理?

非阻塞模式下,套接字函数会立即返回,而不管I/O是否完成,该函数所在的线程会继续运行。

针对非阻塞模式,Winsock提供了select,WSAAsyncSelect(异步选择),WSAEventSelect(事件选择),Overlapped(重叠)以及Completion port(完成端口)对

-可编辑修改-

I/O进行管理

5、什么是网络编程?简述应用进程间的两种通信方式。

网络编程就是利用网络应用编程接口编写实现网络应用进程间的信息交互的网络应用

程序。

应用进程间的通信可分为两种:同一系统间的通信;不同系统上进程间的通信:必须通过网络编程接口访问网络协议提供的服务来实现。

6、什么叫套接字,套接字按通信性质可以分为哪两类,简述这两类的套接字。

为了区别不同的应用程序进程和连接,计算机操作系统为应用程序与TCP/IP协议交互提供的接口。

套接字按通信性质分:

会话套接字提供双向的、有序的、无重复并且无记录边界的数据流服务,及一种可靠的面向连接的数据传输方法。数据报套接字支持双向通信,提供不可靠的、非连接的数据报通信方式。

7、实现网间进程通信必须解决哪些问题?

网间进程的标识问题; 如何与网络协议栈连接的问题; 协议的识别问题; 不同的通信服务的问题。 8、说明TCP/IP中端口的分配机制

端口0:不使用,或者作为特殊的使用;端口1-255:保留给特定的服务,TCP和UDP均规定,小于256的端口号才能分配给网上著名的服务;端口256-1023:保留给其他的服务,如路由; 端口1024-4999:可以用作任意客户的端口;端口5000-65535:可以用作用户的服务器端口。

9、说明C/S模式的概念、工作过程和特点。

C/S模式即客户机/服务器模式,是应用程序最常用的通信模式。

服务器的工作过程是:(1)打开一通信通道,并告知服务器所在的主机,它愿意在某一公认的地址上接收客户请求。(2)等待客户的请求到达该端口。(3)服务器接收到服务请求,处理该请求并发送应答信号。为了能并发地接收多个客户的服务请求,要激活一个新进程或新线程来处理这个客户请求(如UNIX系统中用fork、exec)。服务完成后,关闭此新进程与客户的通信链路,并终止。(4)返回第二步,等待并处理另一客户请求。(5)在特定的情况下,关闭服务器。

-可编辑修改-

客户方工作过程:(1)打开一通信通道,并连接到服务器所在主机的特定监听端口。(2)向服务器发送请求报文,等待并接收应答;继续提出请求,与服务器的会话按照应用协议进行。(3)请求结束后,关闭通信通道并终止。

特点:(1)客户和服务器都是软件进程,C/S模式是网络上通过进程通信建立分布式应用的常用模型。(2)非对称性:服务器通过网络提供服务,客户通过网络使用服务,这种不对称性体现在软件结构和工作过程上。(3)对等性:客户和服务器必有一套共识的约定,必与以某种应用层协议相联,并且协议必须在通信的两端实现。(4)服务器的被动性:服务器必须先行启动,时刻监听,及时服务,只要有客户请求,就立即处理并响应,回传信息。但决不主动提供服务。(5)客户机的主动性:客户机可以随时提出请求,通过网络得到服务,也可以关机走人,一次请求与服务的过程是由客户机首先激发的。(6)一对多:一个服务器可以为多个客户机服务,客户机也可以打开多个窗口,连接多个服务器。(7)分布性与共享性:资源在服务器端组织与存储,通过网络分散在多个客户端使用。 10、为什么即时通信类软件使用UDP协议传输数据?

UDP的开销较小,可以减少网络压力,也可以减轻服务器的负载,节省运营商的成本;

此外,网络出现的拥塞不会使源主机的发送速率降低。 11、套接字实现了什么功能?

socket屏蔽了不同网络协议间的差异,提供了大量的系统调用。

-可编辑修改-