网络攻城狮怎么看待TCP/IP协议与UDP协议?

本文涉及的产品
数据传输服务 DTS,数据同步 small 3个月
推荐场景:
数据库上云
数据传输服务 DTS,数据迁移 small 3个月
推荐场景:
MySQL数据库上云
数据传输服务 DTS,数据同步 1个月
简介: 在互联网中,存在着各种不同层次的协议,它们分别的功能也是不同的。但做为网络攻城狮,对这些协议的使用以及区分是工作的必备技能。那今天以网络攻城狮的角度来告诉大家攻城狮是怎么看待TCP/IP协议与UDP协议的?先说说TCP/IP协议,即Transmission Control Protocol/Internet Protocol的简写,中译名为传输控制协议/因特网互联协议,又名网络通讯协议,这是因特网最基本的协议也是国际互联网的基础,此协议由网络层的IP协议和传输层的TCP协议组成。

在互联网中,存在着各种不同层次的协议,它们分别的功能也是不同的。但做为网络攻城狮,对这些协议的使用以及区分是工作的必备技能。那今天以网络攻城狮的角度来告诉大家攻城狮是怎么看待TCP/IP协议与UDP协议的?
9


先说说TCP/IP协议,即Transmission Control Protocol/Internet Protocol的简写,中译名为传输控制协议/因特网互联协议,又名网络通讯协议,这是因特网最基本的协议也是国际互联网的基础,此协议由网络层的IP协议和传输层的TCP协议组成。TCP/IP 主要使电子设备连入因特网,以及对数据相互产生传输的起着规范作用。这些协议主要分为4层的层级结构,分别为:链路层、网络层、传输层和应用层。
链路层:负责封装和解封装IP报文,发送和接受ARP/RARP报文等;
网络层:负责路由以及把分组报文发送给目标网络或主机;
传输层:负责对报文进行分组和重组,并以TCP或UDP协议格式封装报文;
应用层:负责向用户提供应用程序,比如HTTP、FTP、Telnet、DNS、SMTP等。
而这每一层都是运用它的下一层所提供的协议来完成自己本层的需求。在数据链路层,数据传输在经过各层都要对其进行协议封装,用来标明对应层的通信协议。需要注意的是在网络体系结构中要建立网络通信只能在双方对等层进行,不可以调级或者交错。简单来讲就是:TCP负责发现传输数据,传输过程中有问题就发出错误信号,要求重新进行数据传输,直到所有数据安全及正确地传输到目的地。TCP主要是面向连接的可靠服务,通过三次握手建立的连接过程;仅支持单项传输;允许双方的通信应用程序随时都可以发送数据。传输层协议除了TCP协议,还有一个具有代表性的是UDP协议。
01200000031843119341053263716


现在说说UDP协议,全称是用户数据报协议,在网络中也是用于处理传输的数据包,属于无连接的协议。处于IP协议的上一层。UDP的不可靠性在于不会对其数据包分组、组装、排序,换言之,当报文发送完成之后,是无法获悉此数据包是否是安全完整到达的也不会备份数据。不过优势也是不可忽视的。
UDP主要是面向报文的,也属于无连接型的,当应用层的数据到达传输层UDP协议时,数据只会被增加标识是UDP协议,发送给网络层,网络层再将数据传输到传输层后去除UDP协议发给应用层,这期间不会对数据报文做任何拆分和拼接的操作;UDP是有多功能的,不仅支持一对一,一对多,多对多,多对一;UDP不会被拥塞控制,一般会议稳定的速度发送数据,如果网络不好时,会自动调整发送率,不会有丢包出现。因此一般电话会议要求高的场景就会使用UDP。
85_252723623_20160506093009


虽然两个协议都属于传输层的,但是各有千秋,如果想要数据传输的准确性,可以接收时间的延迟,就选择TCP协议。如果是需要实效性比较高就只能选择UDP协议。根据实际操作应用环境选择适合的协议,会事半功倍的。
相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
Sqoop 企业级大数据迁移方案实战
Sqoop是一个用于在Hadoop和关系数据库服务器之间传输数据的工具。它用于从关系数据库(如MySQL,Oracle)导入数据到Hadoop HDFS,并从Hadoop文件系统导出到关系数据库。 本课程主要讲解了Sqoop的设计思想及原理、部署安装及配置、详细具体的使用方法技巧与实操案例、企业级任务管理等。结合日常工作实践,培养解决实际问题的能力。本课程由黑马程序员提供。
相关文章
|
8天前
|
消息中间件 网络协议 算法
UDP 和 TCP 哪个更好?
【8月更文挑战第23天】
32 0
|
8天前
|
监控 网络协议 Linux
在Linux中,如何实时抓取并显示当前系统中tcp 80 端口的网络数据信息?
在Linux中,如何实时抓取并显示当前系统中tcp 80 端口的网络数据信息?
|
11天前
|
网络协议 安全 算法
"网络世界的守护者:一探究竟TCP协议如何确保数据传输的绝对安全与可靠"
【8月更文挑战第20天】传输控制协议(TCP)是网络通信中的核心协议之一,它确保数据包能可靠、有序地从源头传输到目的地。TCP采用三次握手的方式建立连接,并通过序列号、确认应答及超时重传来保障数据传输的准确性。此外,TCP还具备流量控制与拥塞控制功能,避免网络拥塞。虽然TCP在可靠性上表现优异,但在快速传输场景中可能存在局限。深入理解TCP对于网络工程师和开发者至关重要。
29 1
|
12天前
|
网络协议 网络安全 Python
电脑中 TCP/UDP 端口是否开放的测试:令人意想不到的神奇策略等你发现!
【8月更文挑战第19天】在网络管理和维护中,常需确认TCP/UDP端口是否开放以确保服务运行顺畅。端口如同计算机对外通信的“门”,TCP提供可靠连接,UDP则快速但无连接。测试端口是否开放的方法多样:可用`telnet`测试TCP端口,如`telnet localhost 80`;UDP测试较复杂,可用`nc`工具,如`nc -u -z localhost 53`。此外,也有在线工具可供选择,但需确保其安全性。
28 1
|
12天前
|
网络协议 Java
一文讲明TCP网络编程、Socket套接字的讲解使用、网络编程案例
这篇文章全面讲解了基于Socket的TCP网络编程,包括Socket基本概念、TCP编程步骤、客户端和服务端的通信过程,并通过具体代码示例展示了客户端与服务端之间的数据通信。同时,还提供了多个案例分析,如客户端发送信息给服务端、客户端发送文件给服务端以及服务端保存文件并返回确认信息给客户端的场景。
一文讲明TCP网络编程、Socket套接字的讲解使用、网络编程案例
|
6天前
|
网络协议 编译器 Go
揭秘!TCP、RPC、gRPC、HTTP大PK,谁才是网络通信界的超级巨星?一篇文章带你秒懂!
【8月更文挑战第25天】本文以教程形式深入对比了TCP、RPC、gRPC与HTTP这四种关键通信协议,并通过Go语言中的示例代码展示了各自的实现方法。TCP作为一种可靠的传输层协议,确保了数据的完整性和顺序性;RPC与gRPC作为远程过程调用框架,特别适合于分布式系统的函数调用与数据交换,其中gRPC在性能和跨语言支持方面表现出色;HTTP则是广泛应用于Web浏览器与服务器通信的应用层协议。选择合适的协议需根据具体需求综合考量。
49 0
|
8天前
|
网络协议 数据处理 C语言
网络编程进阶:UDP通信
网络编程进阶:UDP通信
57 0
|
8天前
|
域名解析 网络协议 Linux
在Linux中,我们都知道,dns采用了tcp协议,又采用了udp协议,什么时候采用tcp协议?什么 时候采用udp协议?为什么要这么设计?
在Linux中,我们都知道,dns采用了tcp协议,又采用了udp协议,什么时候采用tcp协议?什么 时候采用udp协议?为什么要这么设计?
|
10天前
|
网络协议
计算机网络:TCP协议的三次握手和四次挥手与UDP协议区别.
计算机网络:TCP协议的三次握手和四次挥手与UDP协议区别.
20 0
|
10天前
|
机器学习/深度学习 网络协议 安全
在Linux中,如何追踪TCP连接和网络数据包,如使用tcpdump或Wireshark?
在Linux中,如何追踪TCP连接和网络数据包,如使用tcpdump或Wireshark?
下一篇
云函数