gpt4 book ai didi

c - 文件服务器及其关联的客户端

转载 作者:太空宇宙 更新时间:2023-11-04 11:37:53 25 4
gpt4 key购买 nike

我对套接字编程非常陌生,我正在实现一个文件服务器,它接收来自客户端的请求,如 open()、read()、write()、close()。文件服务器将处理请求并将每个系统调用的返回值发送给客户端。

我不知道我需要定义什么类型的套接字(即流式套接字、数据报套接字等)。什么命令将从客户端发送请求,我将如何从服务器接收返回值,我将如何在服务器端接收它并将返回值发送给我的客户端。

将不胜感激得到一些指点。

谢谢

一个编辑:是不是像这样简单的工作开始Server not able to properly read/open a filename sent by client in C

最佳答案

这部分取决于您的文件服务器设计。

如果你想要 stateless服务器,那么数据报或流就可以了。数据报相对不错,因为您的服务器和客户端不需要处理部分 请求——请求的全部内容都包含在数据报中。

如果你想要 stateful服务器,那么流可能更好——当您收到 TCP RST 数据包时,您可以自动释放锁并取消分配客户端“拥有”的资源。 (客户端消失了,丢掉它们的状态。)您当然可以构建一个带有数据报服务的有状态服务器,但它似乎不太合适。

但是在开放的互联网上,通常你只有 UDPTCP -- 我不知道是否 RDP ,一种可靠的数据报传输,是否在给定的 ISP 上路由。被迫在不可靠 数据报和可靠 流之间,我几乎每次都推荐可靠的流。您只会在可靠的 LAN 上使用您的协议(protocol)吗?或者在有损的无线或公共(public)互联网链接上?

关于c - 文件服务器及其关联的客户端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6241270/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com