【问题标题】:How to write simple TCP sender/receiver on socket [duplicate]如何在套接字上编写简单的 TCP 发送方/接收方 [重复]
【发布时间】:2017-01-12 14:37:07
【问题描述】:

我想创建一个连接到套接字的简单通信对象 ( = ip@port) 并且将能够向/从该套接字发送和接收字节数组。

我不想关闭我的两台机器之间的连接 - 我想保持 tcp 连接,直到我手动关闭连接

  1. 我知道“TcpClient”和“TcpListener”,但我不知道我需要在我的情况下使用它们。

  2. 我如何才能监听同一个套接字并能够将 byte[] 发送到我的机箱的同一个端口,并且仍然能够不错过我需要接收的任何包?

【问题讨论】:

  • 你没有尝试过来自 MSDN 的 TcpClient / TcpListener 示例吗?
  • 我试过了,但我仍然不能确定没有丢失的包
  • 请发布您的代码 - 是什么让您认为缺少数据包? TCP 是一种可靠的面向连接的协议,因此不应该存在。
  • 您已经提出了 400 多个问题。请阅读How to Ask,分享您的研究并非常明确地解释您需要帮助的部分。看来您只是在寻找套接字教程,网上有很多。
  • @Yanshof - 如果答案对您有帮助,您可能会喜欢投票!请在此处查看如何投票 -> meta.stackexchange.com/questions/173399/…

标签: c# .net sockets tcp network-programming


【解决方案1】:
  1. 我知道“TcpClient”和“TcpListener”,但我不知道 我需要用它们来处理我的情况。

即使是在网络上进行简单的搜索也会给您很多答案。无论如何,TcpClient 是用于 TCP/IP 连接的客户端。 TcpListener 用于 TCP/IP 连接的服务器端。

  1. 如何监听同一个套接字并能够将字节 [] 发送到我的机箱的同一个端口,并且仍然能够不错过任何包 我需要收到吗?

您不会错过任何数据包,因为您的底层传输协议是 TCP。

对于 TcpClient/客户端示例 ---> https://msdn.microsoft.com/en-us/library/system.net.sockets.tcpclient(v=vs.110).aspx#Anchor_6

对于 TcpListener/server 示例 ---> https://msdn.microsoft.com/en-us/library/system.net.sockets.tcplistener(v=vs.110).aspx#Anchor_6

【讨论】:

    猜你喜欢
    • 2012-09-23
    • 1970-01-01
    • 1970-01-01
    • 2022-11-18
    • 1970-01-01
    • 2021-09-15
    • 2018-10-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多