我一直想学习TCP或UDP(我听说UDP很烂)在C#中,但我从来没有找到任何教程可以教它。我的意思是,我已经谷歌了教程,结果甚至不再相关。几乎我遇到的每一个教程都解释TCP,就好像我已经知道它一样,或者他们介绍术语但从不解释它们。几个月后,我完全没有进展。有什么帮助吗?注意:我不是一个初学者程序员,我有经验的程序。这只是TCP教程有吸。
ygya80vv1#
你可能用了错误的关键字搜索。关键字是 sockets。TCP/IP编程API被称为sockets,在几乎所有的平台上,包括. NET。
qni6mghb2#
尝试codeproject.com他们有很多关于TCP/UDP通信(以及其他内容)的教程,其中有相当好的代码示例。One of the many
a14dhokn3#
我认为很难找到专门针对TCP和UDP的教程,因为它们是特定的协议(尽管使用非常频繁),而Microsoft正试图抽象所有这些概念,以便您的应用程序不依赖于底层技术。现在,你会被建议使用Windows Communication Foundation(WCF);你有很多来自MSDN或beginner's guide的资源。顺便说一句,* 学习 * TCP不能通过教程完成,而是通过一本专注于网络的书,如this one。如果你这样做,你也会了解为什么UDP不“吸”...
pvabu6sv4#
UDP是一个不同的野兽。然而,我发现这作为一个起点非常有用:TCP/IP tutorial
6xfqseft5#
我写了一些基于. NET的TCP/IP文章on my blog。它们不是教程相反,它们是一些关于常见错误的文章。我建议你在理解教程之后阅读它们。我还在resources section下列出了几本好的TCP/IP书籍。
vaqhlq816#
没有C#教程的原因是因为它是不需要的。你基本上会问“有没有一门课程告诉我当我开奔驰时街道上的规则是如何的”。提示:有规则如何驾驶n街道,有一个手册的奔驰汽车。或者:有关于IP协议的书籍,然后有.NET文档如何.NET实现这一点。如果你想成为编程领域的初级以上,那么最好习惯于单独学习抽象概念,不要期望每个简单的步骤都有完整的“howto”。现在,TCP / UDP是完全独立的项目。它们都扩展了TCP,并且它们有非常不同的用途。说“udp糟透了”对我知道的许多程序来说是相当无知的,这些程序永远不会与TCP一起工作,并且需要UDP的快速和简单的数据分发(与TCP相反,也支持多播)。我的大部分流量以GB计)外部这些天是基于UDP的,因为UDP不会卡在丢失的数据包上,和列表数据包可以很容易地用一个专门的更高级别(应用程序级别)协议来请求。TCP有一个非常讨厌的习惯,当一个数据包丢失时会被卡住长达3分钟。有时(比如:金融数据,voip)这是不能真正接受的。大多数程序都喜欢TCP的简单处理,但它附带了一个显著的代价。
6条答案
按热度按时间ygya80vv1#
你可能用了错误的关键字搜索。关键字是 sockets。TCP/IP编程API被称为sockets,在几乎所有的平台上,包括. NET。
qni6mghb2#
尝试codeproject.com
他们有很多关于TCP/UDP通信(以及其他内容)的教程,其中有相当好的代码示例。
One of the many
a14dhokn3#
我认为很难找到专门针对TCP和UDP的教程,因为它们是特定的协议(尽管使用非常频繁),而Microsoft正试图抽象所有这些概念,以便您的应用程序不依赖于底层技术。
现在,你会被建议使用Windows Communication Foundation(WCF);你有很多来自MSDN或beginner's guide的资源。
顺便说一句,* 学习 * TCP不能通过教程完成,而是通过一本专注于网络的书,如this one。如果你这样做,你也会了解为什么UDP不“吸”...
pvabu6sv4#
UDP是一个不同的野兽。
然而,我发现这作为一个起点非常有用:TCP/IP tutorial
6xfqseft5#
我写了一些基于. NET的TCP/IP文章on my blog。
它们不是教程相反,它们是一些关于常见错误的文章。我建议你在理解教程之后阅读它们。我还在resources section下列出了几本好的TCP/IP书籍。
vaqhlq816#
没有C#教程的原因是因为它是不需要的。你基本上会问“有没有一门课程告诉我当我开奔驰时街道上的规则是如何的”。提示:有规则如何驾驶n街道,有一个手册的奔驰汽车。
或者:有关于IP协议的书籍,然后有.NET文档如何.NET实现这一点。如果你想成为编程领域的初级以上,那么最好习惯于单独学习抽象概念,不要期望每个简单的步骤都有完整的“howto”。
现在,TCP / UDP是完全独立的项目。它们都扩展了TCP,并且它们有非常不同的用途。说“udp糟透了”对我知道的许多程序来说是相当无知的,这些程序永远不会与TCP一起工作,并且需要UDP的快速和简单的数据分发(与TCP相反,也支持多播)。我的大部分流量以GB计)外部这些天是基于UDP的,因为UDP不会卡在丢失的数据包上,和列表数据包可以很容易地用一个专门的更高级别(应用程序级别)协议来请求。TCP有一个非常讨厌的习惯,当一个数据包丢失时会被卡住长达3分钟。有时(比如:金融数据,voip)这是不能真正接受的。大多数程序都喜欢TCP的简单处理,但它附带了一个显著的代价。