gpt4 book ai didi

c - 如何根据数据创建Socket

转载 作者:行者123 更新时间:2023-11-30 17:30:57 25 4
gpt4 key购买 nike

我想知道如何根据数据创建套接字。例如,如果数据需要可靠性,它将创建一个带有 SOCK_STREAM 的套接字,因此它将选择 TCP,否则,如果不需要任何可靠性,我将使用 SOCK_DGRAM 作为 UDP。

可以使用 switch 或 if-else 条件来实现吗?

我是这个主题的新手。如果有人为此提供良好的资源,我真的很感激。

最佳答案

从您的评论看来,您将不会通过读取实际数据流来决定创建哪种套接字类型,而是通过提前引用表格来决定。那是对的吗?那么答案是肯定的,您可以使用某种分支来为您要连接的 IP/端口创建适当的套接字/连接类型。

但是如果您想感知数据类型,然后根据字节流包含的内容做出决定,那么您可以创建一个临时 INET 套接字,读取足够的字节来确定内容,然后决定是否需要不同的协议(protocol)来优化您的需求。一旦确定了最佳连接类型,您可以决定保留当前连接,或关闭它,然后使用具有更优化协议(protocol)的套接字类型重新连接。步骤:

1 使用任何协议(protocol)连接到服务器。
2 分析前几次读取的数据内容以确定最佳套接字协议(protocol)。
3如果内容表明当前协议(protocol)是最佳的,则保留它。
4 如果内容表明当前协议(protocol)不是最佳的,关闭它,使用最佳套接字类型重新打开。

这一切都假设您知道您选择连接的服务器的数据类型
将提供。 这似乎不太可能。您更有可能知道
的类型将为您连接到的每个 IP/端口地址提供数据,因此知道哪种类型的连接是最佳的。

关于c - 如何根据数据创建Socket,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24843090/

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