首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >套接字和以太网是如何一起工作的?

套接字和以太网是如何一起工作的?
EN

Stack Overflow用户
提问于 2015-07-08 20:38:20
回答 1查看 2.2K关注 0票数 0

假设我有两台计算机使用tcp/ip连接到单一以太网电缆上。如果计算机1使用端口12345连接到计算机2,计算机2用端口54321连接到计算机1,那么当两台计算机同时发送恒定的数据流时会发生什么情况?

计算机是否将一半的以太网电缆作为单向管道使用,还是轮流通过以太网电缆发送数据,以便一次只传输一段数据?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-09 11:56:54

在物理层(并假定常规的Cat5 TP电缆和以太网硬件),每个通信伙伴都有自己的线路对,允许同时发送和接收。这被称为全双工操作。在较旧的硬件(如令牌环)中,几台计算机必须共享相同的线路,并且只能在某些特殊情况下使用全双工。

幸运的是(如前所述),TCP/IP套接字确实在协议栈中的一个更高的层上工作,这是从实际的物理访问类型中抽象出来的。您可以在双方之间建立任意数量的开放连接,实际上至少是这样。网络堆栈将所有通信包装成数据包,用端口号、源地址和目标地址标记通信,并将其传递到下一层,直到到达介质为止。因此,端口号和套接字是合乎逻辑的,与实际硬件几乎没有任何关系。您甚至不需要某种套接字的网络硬件。

事实上,这整个方案要复杂得多,我建议阅读WP上的网络套接字,来简单介绍sockets是如何工作的,以及它们是如何工作的。关于更多信息,Andrew的“计算机网络”是一本很好的书,它涵盖了所有相关细节,并且易于阅读。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31303236

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档