早教吧 育儿知识 作业答案 考试题库 百科 知识分享
早教吧考试题库频道 --> 计算机类考试 -->软考中级 -->

该PDA产品的操作系统采用嵌入式Linux,网络协议采用TCP/IP,下图是未完成的面向连接的socket通信流

题目

该PDA产品的操作系统采用嵌入式Linux,网络协议采用TCP/IP,下图是未完成的面向连接的socket通信流程图,请从下列子程序(参数和返回值略)中选择恰当者填入下图所示流程图的相应编号处。

(1)Accept() (2)Bind() (3)Connect()

(4)Listen() (5)Read() (6)Write()

参考答案
正确答案:①:(2) ②:(4) ③:(1) ④:(5) ⑥:(6) ⑥:(3) ⑦:(6)
①:(2) ②:(4) ③:(1) ④:(5) ⑥:(6) ⑥:(3) ⑦:(6) 解析:Socket(套接字)是进程间的通信机制,既适用于同一台计算机上的进程间通信,也使用于网络环境的进程间通信。网络通信有两种主要模式,一种为面向连接的通信,另一种为五连接通信。
在面向连接的socket通信模式中,通信双方要先通过一定的步骤在互相之间建立起一种虚拟的连接,或者说虚拟的线路,然后再通过虚拟的连接线路进行通信。在通信的过程中,所有报文传递都保持着原来的次序,报文在网络中传输是可靠的。
面向连接的socket通信流程图是一个客户端/服务器模型,服务器端程序的功能是监听其端口,如果发现有客户端的请求到来,就产生一个子进程与客户端进行通信。服务器端首先调用Socket()创建一个socket,然后调用Bind()与本地地址/端口号绑定,成功之后就通过调用在相应的socket上监听。当Accept()捕捉到一个连接服务请求时,就生成新的socket,并通过这个新的socket与客户端通信,然后关闭该socket。
客户端程序首先创建一个socket,通过调用Connect函数与服务器建立连接,连接成功后与服务器通信,接收服务器发过来的数据,最后关闭socket,结束程序。