C#使用TCP/UDP协议通信并用Wireshark抓包分析数据

一:介绍UDP:

TCP和UDP的区别

Tcp 是 面向连接的 可靠的 流式服务
所以Tcp 需要进行三次握手建立连接后,才可以传输用户数据,可靠性是通过应答确认、超时重传机制等保证,还有滑动窗口来进行流量控制。
Udp 是 无连接 不可靠 数据报服务
所以UDP不需要进行三次握手来建立连接,直接发送数据,不保证可靠交付,不管对方收到还是没有收到

TCP和UDP的编程流程

TCP编程流程:

 UDP编程流程:

UDP协议的特点:

 无连接:只知道对端的IP和端口号就可以发送,不需要实现建立连接。
不可靠:没有确认机制, 没有重传机制。如果因为网络故障该段无法发到对方, UDP协议层也不会给应用层返回任何错误信息。
面向数据报: 应用层交给UDP多长的报文, UDP原样发送既不会拆分,也不会合并。如果发送端调用一次sendto, 发送100个字节, 那么接收端也必须调用对应的一次recvfrom, 接收100个 字节,而不能循环调用10次recvfrom, 每次接收10个字节。所以UDP不能够灵活的控制读写数据的次数和数量。

UDP的缓冲区:UDP存在接收缓冲区,但不存在发送缓冲区。

UDP没有发送缓冲区,在调用sendto时会直接将数据交给内核,由内核将数据传给网络层协议进行后续的传输动作。为什么UDP不需要发送缓冲区? 因为UDP不保证可靠性,它没有重传机制,当报文丢失时,UDP不需要重新发送,而TCP不同,他必须具备发送缓冲区,当报文丢失时,TCP必须保证重新发送,用户不会管,所以必须要具备发送缓冲区。

UDP具有接收缓冲区,但是这个接收缓冲区不能保证收到的UDP报文的顺序和发送UDP报的顺序一致,如果缓冲区满了再到达的UDP数据报就会被丢弃。

二:下载Wireshark

1.进入官网:Wireshark · Go Deep.

点击download下载 

 选择相应的版本进行下载

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用Wireshark抓包分析各种协议的步骤如下: 1. 打开Wireshark软件,选择需要抓包的网络接口,点击“开始”按钮开始抓包。 2. 在抓包过程中,可以通过筛选器选择需要分析协议,比如PPPIP、ARP、ICMP、DNS、UDPTCP等。 3. 分析PPPIP协议的步骤: a. 在Wireshark中打开抓包文件,选择“Statistics”菜单下的“Protocol Hierarchy”选项。 b. 在协议分层结构图中,可以看到PPPIP协议的层级结构。 c. 选择PPPIP协议数据包,可以在“Packet Details”窗口中查看PPPIP协议的详细信息,包括协议头部信息和数据负载。 4. 分析ARP协议的步骤: a. 在Wireshark中打开抓包文件,选择“Statistics”菜单下的“Conversations”选项。 b. 在“Conversations”窗口中选择“ARP”协议,可以查看所有ARP协议数据包。 c. 选择ARP协议数据包,可以在“Packet Details”窗口中查看ARP协议的详细信息,包括协议头部信息和数据负载。 5. 分析ICMP协议的步骤: a. 在Wireshark中打开抓包文件,选择“Statistics”菜单下的“Endpoints”选项。 b. 在“Endpoints”窗口中选择“ICMP”协议,可以查看所有ICMP协议数据包。 c. 选择ICMP协议数据包,可以在“Packet Details”窗口中查看ICMP协议的详细信息,包括协议头部信息和数据负载。 6. 分析DNS协议的步骤: a. 在Wireshark中打开抓包文件,选择“Statistics”菜单下的“Endpoints”选项。 b. 在“Endpoints”窗口中选择“DNS”协议,可以查看所有DNS协议数据包。 c. 选择DNS协议数据包,可以在“Packet Details”窗口中查看DNS协议的详细信息,包括协议头部信息和数据负载。 7. 分析UDP协议的步骤: a. 在Wireshark中打开抓包文件,选择“Statistics”菜单下的“Protocol Hierarchy”选项。 b. 在协议分层结构图中,可以看到UDP协议的层级结构。 c. 选择UDP协议数据包,可以在“Packet Details”窗口中查看UDP协议的详细信息,包括协议头部信息和数据负载。 8. 分析TCP协议的步骤: a. 在Wireshark中打开抓包文件,选择“Statistics”菜单下的“Protocol Hierarchy”选项。 b. 在协议分层结构图中,可以看到TCP协议的层级结构。 c. 选择TCP协议数据包,可以在“Packet Details”窗口中查看TCP协议的详细信息,包括协议头部信息和数据负载。 以上就是使用Wireshark抓包分析PPPIP、ARP、ICMP、DNS、UDPTCP协议的步骤。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值