网络通信协议,UDP和TCP,初步了解

UDP(User Datagram Protocol)和TCP(Transmission Control Protocol)是两种常见的网络通信协议,用于在计算机网络中进行数据传输。

  • [1. TCP:Transmission Control Protocol(传输控制协议)](#1. TCP:Transmission Control Protocol(传输控制协议))
    • [1.1 why TCP important(为什么TCP很重要)](#1.1 why TCP important(为什么TCP很重要))
    • [1.2. what's TCP(什么是TCP)](#1.2. what’s TCP(什么是TCP))
    • [1.3 TCP flow contrlol(TCP流量控制)](#1.3 TCP flow contrlol(TCP流量控制))
  • [2. UDP:User Datagram Protocal(用户数据包协议)](#2. UDP:User Datagram Protocal(用户数据包协议))
    • [2.1 what's UDP(什么是UDP)](#2.1 what’s UDP(什么是UDP))
  • [3. 总的来说](#3. 总的来说)

1. TCP:Transmission Control Protocol(传输控制协议)

1.1 why TCP important(为什么TCP很重要)

TCP 主要的功能是希望在不可靠的网络里,建构一个可靠的传输环境,internet要连接跨地区网络,所以用连接性高但可靠性低的IP,发送packet后会遗失或干扰发生数据错误或重复传送导致到达次序混乱,基本上IP协议无法检定以上可能错误,这都必须有TCP协议侦测并采取补救措施,由此TCP流量控制就显得非常重要。

1.2. what's TCP(什么是TCP)

TCP 是一种面向连接的协议,它提供了可靠的、有序的数据流传输服务。TCP 在通信开始之前需要进行握手过程,建立起连接后,它通过序号和确认号来保证数据的可靠性、有序性和完整性。TCP 还实现了流量控制和拥塞控制机制,以确保网络的稳定性和公平性。TCP 适用于对数据可靠性和顺序性要求较高的应用场景,如网页浏览、文件传输和电子邮件。

1.3 TCP flow contrlol(TCP流量控制)

流量控制是一种用于在已建立的连接上进行数据传输的方法。它通过管理数据包的流动来提高传输连接的利用率。

流量控制不仅管理数据包在通信连接中的传输顺序,还涉及管理发送端和接收端的缓冲区。发送端将数据放入发送缓冲区,接收端则将接收到的数据放入接收缓冲区。

在传输过程中,可能会出现一些问题,例如数据包延迟到达接收端、传输错误等。因此,需要一种机制来处理这些问题,例如确认接收到的数据、重传丢失的数据等。

流量控制技术旨在减少缓冲区的需求,以提高系统的效率。然而,由于缓冲区无法无限扩展,因此重复使用缓冲区以减少需求也是流量控制的重要目标之一。

2. UDP:User Datagram Protocal(用户数据包协议)

2.1 what's UDP(什么是UDP)

UDP 是一种简单的无连接协议,它提供了数据包的传输服务,但不提供像 TCP 那样的可靠性和错误检测机制。UDP 数据包以数据报形式发送,每个数据包都是一个独立的实体,它们可能会按顺序到达,也可能丢失或重复。UDP 适用于对实时性要求较高,但对数据可靠性要求不高的应用场景,比如音频/视频流传输和在线游戏。

3. 总的来说

UDP 适用于实时性要求高但对数据可靠性要求较低的应用场景,而 TCP 则适用于对数据可靠性和顺序性要求较高的应用场景。

重点摘要自以下链接,欲深入了解更多细节,请参阅:
1. 维基百科 - 传输控制协议
2. TCP/IP 协定与 Internet 网络:第七章 传输层协定

相关推荐
Tlzns1 天前
Linux网络——UDP的运用
linux·网络·udp
打鱼又晒网2 天前
linux网络套接字 | 深度解析守护进程 | 实现tcp服务守护进程化
linux·网络协议·计算机网络·tcp
嵌入式大圣3 天前
单片机UDP数据透传
单片机·嵌入式硬件·udp
hkNaruto3 天前
【P2P】【Go】采用go语言实现udp hole punching 打洞 传输速度测试 ping测试
golang·udp·p2p
言成言成啊3 天前
TCP与UDP的端口连通性
网络协议·tcp/ip·udp
蟾宫曲4 天前
网络编程 03:端口的定义、分类,端口映射,通过 Java 实现了 IP 和端口的信息获取
java·网络·网络编程·ip·端口
静心观复4 天前
TCP 与 UDP
网络·tcp/ip·udp
玩电脑的辣条哥4 天前
aioice里面candidate固定UDP端口测试
python·网络协议·udp·webrtc
Themberfue5 天前
Java 网络编程 ①-TCP || UDP || Socket
java·开发语言·网络·tcp/ip·计算机网络·udp
w_outlier7 天前
网络基础(二)
网络·mac·ip·网络字节序·端口号