c#制作一个TCP/UDP测试工具

转载 2013年12月05日 09:41:49

目标:使用C#制作一个简单的TCP/UDP测试工具,并且熟悉c#中的socket编程,具备TCP客户端和UPD客户端的功能,并能进行数据收发。

知识准备:

1、socket为何物?

2、c#中需要包含的头文件及用到的API

3、建立一个TCP连接/UDP连接的流程

4、编码测试,发现问题


socket--套接字。首先提到文件描述符这样一个概念。

文件描述符-文件描述符在形式上是一个非负整数。实际上,它是一个索引值,指向内核为每一个进程所维护的该进程打开文件的记录表。当程序打开一个现有文件或者创建一个新文件时,内核向进程返回一个文件描述符。文件中的数据就个人理解,是为应用服务;但应用所需要的数据可能来自本地(通过文件描述符打开文件,读取其中的数据),也可能来自网络(需要对套接字进行操作了)。

摘引百科一段话:

socket非常类似于电话插座。以一个国家级电话网为例,电话的通话双方相当于相互通信的2个进程,区号是它的网络地址;区内一个单位的交换机相当于一台主机,主机分配给每个用户的局内号码相当于socket号。任何用户在通话之前,首先要占有一部电话机,相当于申请一个socket;同时要知道对方的号码,相当于对方有一个固定的socket。然后向对方拨号呼叫,相当于发出连接请求(假如对方不在同一区内,还要拨对方区号,相当于给出网络地址)。假如对方在场并空闲(相当于通信的另一主机开机且可以接受连接请求),拿起电话话筒,双方就可以正式通话,相当于连接成功。双方通话的过程,是一方向电话机发出信号和对方从电话机接收信号的过程,相当于向socket发送数据和从socket接收数据。通话结束后,一方挂起电话机相当于关闭socket,撤消连接

至此,我们对socket进行了直观的描述。抽象出来,socket实质上提供了进程通信的端点。进程通信之前,双方首先必须各自创建一个端点,否则是没有办法建立联系并相互通信的。正如打电话之前,双方必须各自拥有一台电话机一样。在网间网内部,每一个socket用一个半相关描述:
(协议,本地地址,本地端口)
1、c#使用socket需要包含的命名空间system.Net.Sockets。

http://msdn.microsoft.com/zh-cn/library/system.net.sockets.socket.aspx

附上一个MSDN中的socket类相关命名空间说明,从中了解各个类及方法的使用。

打造最漂亮的串口调试助手(基于WPF + .NET C# VS2013)附源码!

WPF界面全部用XAML语言手打,只会用Grid布局
  • q45213212
  • q45213212
  • 2014年06月27日 15:14
  • 38662

C#网络调试助手

  • 2017年11月05日 18:43
  • 1.92MB
  • 下载

基于C#的网络调试助手(源代码)

  • 2016年10月24日 13:28
  • 62KB
  • 下载

基于C#的网络调试助手代码

  • 2015年09月18日 17:44
  • 62KB
  • 下载

转载一个很经典的--C# Socket TCP和UDP报文及端口测试工具的开发(提供源码)

转载地址:http://www.ltmonitor.com/blog/?p=285 因为自己经常做Socket开发,经常要调试各种协议,如TCP、UDP和SIP等协议,还要维护多个服务器...
  • gws1229
  • gws1229
  • 2013年12月10日 09:40
  • 4606

C# Socket TCP和UDP报文及端口测试工具的开发

  • 2015年03月31日 18:56
  • 10.52MB
  • 下载

C# Socket TCP和UDP报文及端口测试工具的开发(提供源码)万能超好测试工具

  • 2014年12月06日 15:52
  • 10.52MB
  • 下载

C# Socket TCP和UDP报文及端口测试工具的开发(提供源码)

  • 2015年09月23日 08:24
  • 173KB
  • 下载

Socket报文和端口测试工具的开发(提供源码)

http://www.cnblogs.com/productivity/archive/2013/01/26/2878047.html 因为自己经常做Socket开发,经常要调试和维...
  • e_wsq
  • e_wsq
  • 2013年10月31日 09:49
  • 2702

C# Socket TCP UDP测试工具 源码

  • 2015年11月04日 17:11
  • 10.52MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:c#制作一个TCP/UDP测试工具
举报原因:
原因补充:

(最多只允许输入30个字)