题目内容 (请给出正确答案)
[判断题]

TCP套接字编程建立连接后,应用程序调用send函数和recv函数发送和接收数据。

提问人:网友freelancer 发布时间:2022-01-06
参考答案
查看官方参考答案
如搜索结果不匹配,请 联系老师 获取答案
网友答案
查看全部
  • · 有4位网友选择 ,占比50%
  • · 有4位网友选择 ,占比50%
匿名网友 选择了
[170.***.***.110] 1天前
匿名网友 选择了
[165.***.***.34] 1天前
匿名网友 选择了
[120.***.***.51] 1天前
匿名网友 选择了
[89.***.***.5] 1天前
匿名网友 选择了
[189.***.***.147] 1天前
匿名网友 选择了
[48.***.***.73] 1天前
匿名网友 选择了
[236.***.***.93] 1天前
匿名网友 选择了
[245.***.***.101] 1天前
加载更多
提交我的答案
登录提交答案,可赢取奖励机会。
更多“TCP套接字编程建立连接后,应用程序调用send函数和rec…”相关的问题
第1题
请阅读以下说明和Socfort程序,将应填(n)处的字句写在对应栏内。

网络应用的基本模型是客户机/服务器模型,这是一个不对称的编程模型,通信的双方扮演不同的角色:客户机和服务器。

以下是一个简单的客户机程序(服务器程序略),其工作过程非常简单:客户机与服务器建立连接后,接收服务器向客户机返回的一条消息。

程序中用到了两种结构hostent与sockaddr_in:

hostent类型的结构定义如下:

struct hostent { char * h_name; //主机的正式名称

char * * h-aliases; //别名列表

int h_addrtype; //主机地址类型:AF-XXX

int H_length; //主机地址长度:4 B(32 b)

char * * h_addr_list; //主机IP地址列表}

define h???-addr h-addr-liSt[0]

sockaddr_in类型的结构定义:sockaddr_in是通用套接字结构sockaddr在TCP/IP协议下的结构重定义,为TCP/IP套接字地址结构。

Struct sockaddrin{

short int sin-family;//地址类型AF_XXX,其中AF_INET为TCP/P专用

unsigned short int sin-port; //端口号

struct in_addr Sin_addr; //Internet地址

//端口号以及Internet地址使用的是网络字节顺序,需要通过函数htons转换

}

struct iN_addr{

_u32 s-addr; //类型为unsignel-long

}

程序中使用到了多个函数:

struct hostent * gethostbyname(const char * hostname);

函数gethostbyname查询与指定的域名地址对应的IP地址,返回一个hostent结构的指针,如果不成功则返回NULL。

Int?_socket(int domain,im-type,int protoco1);

函数socket创建一个套接字描述符,如果失败返回-1。domain为地址类型,type为套接字类型,本题中为SOCK_STREAM;protocol指定协议,本题中为0。

int connect(int sockfd,struct sockaddr * servaddr,int addrlen);

函数connect与服务器建立一个连接,成功返回0,失败返回-1。servaddr为远程服务器的套接字地址,包括服务器的IP地址和端口号;addrlen为地址的长度。

int read(intfd,char * bur,int len);

int write(intfd,char * buf,int len);

函数read和write从套接字读和写数据,成功返回数据量大小,否则返回-1。buf指定数据缓冲区,len指定接收或发送的数据量大小。

[Socket程序]

//程序中引用的头丈件略

definePORT 3490

//定,义端口号为3490

int main(int argc,char * argv[])

{int tsockfd,nbytes;//套接字描述符、读入缓冲区的字节数

char buf[1024];//缓冲区

struct hostent * he;//主机信息类型

struct (1) srvadd;//Internet套接字结构

if(argc!=2)

{perror(“调用参数为零,请输入服务器的主机名!\n”);exit(1);}

if((2))//如果通过主机名没有获得对应的主机信息就提示用户

{perror(“无法通过主机名获得主机信息!\n”);exit(1);}

if((3))//在无法创建套接字时,提示用户

{perror(“无法创建套按字!\n”);exit(1);}

bzero(&srvaddr, (4));//置空srvaddr

sraddr,SIR_family=AF_INET;

srvaddr,sln_port:htons(PO日T);srvaddr.sin_addr: (5);

//设置套接字结构的各项信息,其中的地址来自域名查询后的hp变量

if(connect(sockfd,(n),sizeof(struct sockaddr))==-1)

{perror("连接失败!\n");exit(1);}

//连接服务器,如果失败则提示用户

if((nbytes=read(sockfd,buf,MAXDATASIZE))=-1)

{perror("读失败!\n");exit(1);}

//从套接字中读出数据

buf[nbytes]='\0';

printf("读到的内容:%s",buf);

CIose(SOCkfd);

//打印数据并关闭套接字

点击查看答案
第2题
在编制通信应用程序时,我们通常使用Socket套接字。这里假设要使用Socket编制一个基于TCP的C/S方式的通信程序。

(1)请给出编制服务器端软件(不要求客户端软件)时要用到的主要的Socket函数,并简要的解释每个函数的大致作用。可以先使用画图的方式以自上到下的顺序给出使用的主要函数,然后用文字简要地说明每个函数功能。

(2)假设客户端的IP为192.168.0.1,客户端生成的端口号为1565,服务器端的IP为192.168.0.10,使用的端口号是88,请写出标志客户端和服务器端的一个基于TCP连接的全相关的五元组。

点击查看答案
第3题
在C#中利用Socket进行网络通信编程的一般步骤是:建立Socket侦听、( )、利用Socket接收和发送数据。( 2 分)

A、建立Socket连接;

B、获得端口号;

C、获得IP地址;

D、获得主机名;

点击查看答案
第4题
Java程序中,使用TCP 套接字编写服务器端程序的类是( )。

A、Socket

B、ServerSocket

C、DatagramSocket

D、DatagramPacket

点击查看答案
第5题
应用程序PING发出的是()报文

A. TCP请求报文

B. TCP应答报文

C. ICMP请求报文

D. ICMP应答报文

点击查看答案
第6题
公司欲开发一个用于分布式登陆的服务器端程序,使用面向连接的TCP协议并发地处理多客户端登陆请求。用户要求该服务端程序运行在Linux、Solaris和Windows NT等多种操作系统平台之上,而不同的操作系统的相关API函数和数据都有所不同。针对这种情况,公司的架构师决定采用“包装器外观(Wrapper Facade)”架构模式解决操作系统的差异问题。具体来说,服务端程序应该在包装器外观的实例上调用需要的方法,然后将请求和请求的参数发送给(),调用成功后将结果返回。使用该模式()。

A.客户端程序B.操作系统API函数C.TCP协议API函数D.登录连接程序A.提高了底层代码访问的一致性,但降低了服务端程序的调用性能。B.降低了服务端程序功能调用的灵活性,但提高了服务端程序的调用性能C.降低了服务端程序的可移植性,但提高了服务端程序的可维护性D.提高了系统的可复用性,但降低了系统的可配置性

点击查看答案
第7题
某公司欲开发一个用于分布式登录的服务端程序,使用面向连接的TCP协议并发地处理多客户端登录请求。用户要求该服务端程序运行在Linux、Solaris和WindowsNT等多种操作系统平台之上,而不同的操作系统的相关API函数和数据都有所不同。针对这种情况,公司的架构师决定采用“包装器外观(Wrapper Facade)”架构模式解决操作系统的差异问题。具体来说,服务端程序应该在包装器外观的实例上调用需要的方法,然后将请求和请求的参数发送给(),调用成功后将结果返回。使用该模式()。

A.客户端程序 B.操作系统API函数 C.TCP协议API函数 D.登录连接程序 A.提高了底层代码访问的一致性,但降低了服务端程序的调用性能 B.降低了服务端程序功能调用的灵活性,但提高了服务端程序的调用性能 C.降低了服务端程序的可移植性,但提高了服务端程序的可维护性 D.提高了系统的可复用性,但降低了系统的可配置性

点击查看答案
第8题
TCP的数据被保存在 程序数据中。
点击查看答案
第9题
为应用程序之间的数据传送提供可靠连接的TCP/IP协议是( )

A、TCP协议

B、IP协议

C、ICMP协议

D、UDP协议

点击查看答案
账号:
你好,尊敬的用户
复制账号
发送账号至手机
密码将被重置
获取验证码
发送
温馨提示
该问题答案仅针对搜题卡用户开放,请点击购买搜题卡。
马上购买搜题卡
我已购买搜题卡, 登录账号 继续查看答案
重置密码
确认修改
欢迎分享答案

为鼓励登录用户提交答案,简答题每个月将会抽取一批参与作答的用户给予奖励,具体奖励活动请关注官方微信公众号:简答题

简答题官方微信公众号

警告:系统检测到您的账号存在安全风险

为了保护您的账号安全,请在“简答题”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!

微信搜一搜
简答题
点击打开微信
警告:系统检测到您的账号存在安全风险
抱歉,您的账号因涉嫌违反简答题购买须知被冻结。您可在“简答题”微信公众号中的“官网服务”-“账号解封申请”申请解封,或联系客服
微信搜一搜
简答题
点击打开微信