gpt4 book ai didi

c++ - 如何为服务器处理标记TCP?

转载 作者:可可西里 更新时间:2023-11-01 02:52:01 26 4
gpt4 key购买 nike

我在 Ubuntu 上用 C++ 实现了一个 TCP 客户端服务器架构,服务器应该根据接收到的信息类型处理接收到的数据。所以我需要一种标题。

我是否需要通过首先向服务器写入类似“THIS IS THE HEADER”的字符串来手动执行此操作?

执行此操作的常用方法是什么?

客户:

if (connect(sockfd,(struct sockaddr *) &serv_addr,sizeof(serv_addr)) < 0)
COMP_ERR("ERROR connecting");

int bytes_written = write(sockfd, buffer, bytes_read);

服务器:

while(1)
{
if((size_recv = recv(sock , chunk , 256 , 0) ) <= 0)
{
break;
}
else
{
//use received data
}
}

这似乎是一个标准问题,但我无法在网上找到答案,抱歉。谢谢。

最佳答案

TCP 只是发送字节。由客户端和服务器决定字节的含义。

如果您能找到满足您需要的协议(protocol),您可以使用一些众所周知的协议(protocol),例如 HTTP 或 FTP。例如可能使用 HTTP 并使用 MIME 类型来识别数据。

否则你可以“自己动手”,每个数据包都包含一个 header ,告诉接收者如何处理数据。

一切由你决定。

关于c++ - 如何为服务器处理标记TCP?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23548895/

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