第四阶段C#通讯开发-6:Socket之UDP

1_Socket

(1)Socket即套接字,其实就是一个"外壳",是对网络中不同主机上的应用程序之间进行双向通信的断点的抽象,一个套接字就是网络上进程通信的一段,提供了应用层进程利用网络协议交换数据的机制。

(2)概括:Socket是套接字,本质它是对TCP和UDP做一层封装。让开发者在使用TCP和UDP等协议时,不用关注协议底层原理,使用时更方便。 实质就是,Socket就是【应用层与TCP/IP协议簇通信的中间软件抽象层】。将传输层封装后便与应用层更方便的调用。

(3)C#有Socket类,可以实现TCP和UDP通讯。但.NET Framework框架通过TcpListener类、TcpClient、UdpClient类、这几个类对Socket进行了封装。所以建议使用具体的类。

2_UDP

UDP通讯: https://www.cnblogs.com/seabluescn/p/12972417.html https://blog.csdn.net/u012563853/article/details/126307114

UDP异步发送: https://blog.csdn.net/zhukangle/article/details/72865560

并行编程: https://zhuanlan.zhihu.com/p/448093864

3_协议概念简述?

TCP:Transmission Control Protocol传输控制协议,是一种面向连接的、可靠的、基于字节流的传输层通信协议。 UDP:User Datagram Protocol用户数据报协议,是一种无连接、不可靠、面向数据报的传输层通信协议。 Socket:套接字,是【应用层与TCP/IP协议簇通信的中间软件抽象层】。将传输层封装后便与应用层更方便的调用。

4_TCP与UDP基本区别?

  • TCP基于连接,UDP无连接。

  • TCP要求系统资源较多,UDP较少。

  • UDP程序结构较简单。

  • 流模式(TCP)与数据报模式(UDP)。

  • TCP保证数据正确性,UDP可能丢包。

  • TCP保证数据顺序,UDP不保证。

5_UDP通讯过程?

  • 创建一端。使用UdpClient,特别提醒:使用IPEndPoint类

  • 发送数据到另一端。使用udpClient.Send()

  • 启动另外一端。使用UdpClient

  • 在另外一端接收数据,Task.run(), udpClient.Receive()

6_总结:

1.网络协议理论:(七层网络框架,TCP协议,UDP协议,工业行业协议等) 2.网络协议重要理论:(TCP建立连接时三次握手,TCP释放连接时的四次挥手,TCP与UDP基本区别等) 3.各种网络通讯技术点:(Socket通讯、TCP通讯、UDP通讯)

TCP和UDP是协议,而Socket是一种技术框架。

相关推荐
傻啦嘿哟34 分钟前
某招聘平台爬虫:爬取招聘岗位数据,分析各城市薪资水平
开发语言·爬虫·python
2501_9336707936 分钟前
2026秋招量化分析岗技能栈:Python、SQL、统计建模、回测项目怎么准备
开发语言·python·sql
传奇开心果编程1 小时前
【xilem0.4基础语法学与练】第13课:Xilem 0.4 最简短代码体现“一切皆设计图“
学习·rust·前端框架
小雪崩1 小时前
嵌入式学习 day45:51单片机基础
学习·51单片机
李少兄1 小时前
JavaScript 数据类型完全指南
开发语言·javascript·ecmascript
游戏开发爱好者82 小时前
网络连接排查指南,谁在电脑后台偷跑流量,哪些程序在联网
网络协议·计算机网络·网络安全·ios·adb·https·udp
-SOLO-2 小时前
开发笔记-摸鱼输入法
笔记
Seoyoneh2 小时前
Agentic Workflow编排架构:云客服从“被动响应”迈向“主动执行”的技术实现
java·开发语言·架构
Tangyuewei2 小时前
Java 写 Agent:模型只是组件
java·开发语言
小玮看世界3 小时前
[Python]从合并区间到传感器融合区:合并区间在传感器区域融合的实际落地
开发语言·python