gpt4 book ai didi

sockets - 了解套接字基础知识

转载 作者:行者123 更新时间:2023-12-02 11:58:20 25 4
gpt4 key购买 nike

我一直在阅读基本的网络编程知识,但很难找到关于套接字到底是什么以及它与 OSI 或 TCP/IP 堆栈有何关系的直接解释。

  1. 有人可以向我解释一下套接字是什么吗?它是程序员或API定义的数据结构,还是网卡上的硬件设备?

  2. 上述网络模型的哪些层处理“原始”套接字?传输层?网络层?

  3. 就它们之间传递的数据而言,套接字是基于文本的还是二进制的?

  4. 是否有基于套接字的网络编程的替代方案?或者所有网络应用程序都使用某种形式的套接字吗?

如果我能读到这么多,我应该对我正在阅读的其他内容有一个非常清晰的理解。感谢您的帮助!

最佳答案

简短回答:

  1. Socket 是 IP 连接端点的抽象 - 因此,如果您将其视为 API 结构,那么您的想法并不遥远。请阅读http://en.wikipedia.org/wiki/Internet_socket
  2. Internet layer即IP协议(protocol)。在实践中,您通常会显式使用绑定(bind)到特定传输层参数(数据报/UDP 或流/TCP)的套接字
  3. 套接字以网络字节顺序发送数据 - 无论是文本还是二进制,取决于上层协议(protocol)。
  4. 理论上,可能是的 - 但实际上,所有 IP 流量都是使用“套接字”完成的

关于sockets - 了解套接字基础知识,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4782105/

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