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

本文涉及的产品
数据传输服务 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协议。根据实际操作应用环境选择适合的协议,会事半功倍的。
相关实践学习
RocketMQ一站式入门使用
从源码编译、部署broker、部署namesrv,使用java客户端首发消息等一站式入门RocketMQ。
Sqoop 企业级大数据迁移方案实战
Sqoop是一个用于在Hadoop和关系数据库服务器之间传输数据的工具。它用于从关系数据库(如MySQL,Oracle)导入数据到Hadoop HDFS,并从Hadoop文件系统导出到关系数据库。 本课程主要讲解了Sqoop的设计思想及原理、部署安装及配置、详细具体的使用方法技巧与实操案例、企业级任务管理等。结合日常工作实践,培养解决实际问题的能力。本课程由黑马程序员提供。
相关文章
|
5天前
|
网络协议 JavaScript 安全
深入浅出TCP 与 UDP
深入浅出TCP 与 UDP
20 0
|
5天前
|
网络协议 NoSQL Go
理解基于tcp的网络服务
【6月更文挑战第18天】本文构建了一个基于Golang的TCP网络服务,采用C/S架构。服务提供双倍回显功能,类似telnet,监听`:8910`端口。完整源码可在GitHub找到。
43 6
|
2天前
|
机器学习/深度学习 网络协议 网络性能优化
[计算机网络]深度学习传输层TCP协议
[计算机网络]深度学习传输层TCP协议
7 1
|
2天前
|
网络协议 安全 Java
Java网络编程入门涉及TCP/IP协议理解与Socket通信。
【6月更文挑战第21天】Java网络编程入门涉及TCP/IP协议理解与Socket通信。TCP/IP协议包括应用层、传输层、网络层和数据链路层。使用Java的`ServerSocket`和`Socket`类,服务器监听端口,接受客户端连接,而客户端连接指定服务器并交换数据。基础示例展示如何创建服务器和发送消息。进阶可涉及多线程、NIO和安全传输。学习这些基础知识能助你构建网络应用。
10 1
|
3天前
|
网络协议
tcp套接字和udp套接字可以共用一个端口吗?
tcp套接字和udp套接字可以共用一个端口吗?
6 1
|
9天前
|
缓存 网络协议 算法
TCP传输协议与UDP传输协议的特点与分析
网络协议如同人与人之间相互交流是需要遵循一定的规则(如语言)一样,计算机之间能够进行相互通信是因为它们都共同遵守一定的规则,即网络协议。 OSI参考模型和TCP/IP模型在不同的层次中有许多不同的网络协议,如图所示: 我们今天主要讨论的是传输层的协议,即考虑应用程序之间的逻辑通信。简单来说就是数据该如何发送给其他机器;
|
11天前
|
监控 网络协议 安全
TCP和UDP面试题提问
TCP是一种面向连接、可靠的协议,提供确认和重传机制,确保数据完整性和可靠性,适合网页浏览、邮件收发等。UDP则是无连接、轻量级协议,不保证数据可靠性,但适合实时应用如语音视频通话和在线游戏,追求低延迟。
|
1天前
用UDP协议实现发送接收的网络聊天室
用UDP协议实现发送接收的网络聊天室
7 0
|
2天前
|
网络协议 Java API
TCP/IP协议以及UDP(超详细,看这一篇就够了)
TCP/IP协议以及UDP(超详细,看这一篇就够了)
4 0
|
2天前
|
运维 网络协议 算法
不为人知的网络编程(十六):深入分析与解决TCP的RST经典异常问题
本文将从TCP的RST技术原理、排查手段、现网痛难点案例三个方面,自上而下、循序渐进地给读者带来一套完整的分析方法和解决思路。
4 0