【发布时间】:2011-01-05 10:54:41
【问题描述】:
每个人都将其称为 C 中的 Socket 编程或网络编程,我们通过使用 sys/socket.h 和 netinet/in.h 开始使用它。我们认为这是 100% 正确的。但是当我看到这本书时,我的脑海里浮现出一个问题
Internetworking With TCP/IP Volume III: Client-Server Programming and Applications,有 4 个不同的版本
- Linux/POSIX 套接字
- AT&T TLI(传输层接口)套接字
- BSD(伯克利)套接字
- 窗口插座
我很困惑。这清楚地表明 Socket API 没有标准。
我也很惊讶地看到 sys/socket.h 和 netinet/in.h 是 http://en.wikipedia.org/wiki/Berkeley_sockets 中 POSIX C 库的一部分。我现在更困惑了。
- 为什么没有这方面的标准?
- 还有哪些可用的套接字 API?
- 这些 Socket API 之间的区别是什么?
- 当人们说“C 语言网络编程”/“套接字编程”时,他们到底指的是什么?
- 更多信息的链接?
【问题讨论】:
标签: sockets network-programming posix winsock