网工基础协议——TCP/UDP协议

TCP和UDP的不同点:

TCP(Transmission Control Protocol,传输控制协议);

UDP(User Data Protocol,用户数据报协议);

**TCP:**传输控制协议,面向连接可靠的协议,只能适用于单播通信,基于建立好的连接,灵活的对接下来的数据传输控制。

**UDP:**用户数据包协议,面向无连接不可靠的协议。保证数据正常传输,UDP无法进行控制,则需要基于上层协议进行控制。

区别:

TCP------无法很好满足及时性业务(文件类传输业务好满足,可靠);

UDP------可以很好满足及时性业务(对时间要求高的业务)。

UDP:上层数据过大,UDP无法分片,交于网络层进行分片。

TCP:自带分片功能,感知上层数据大小做分片,网络层不做分片。

**传输层:**实现"端到端"的服务,应用到应用;基于应用级别的互访就是端口到端口的互访。

**端口范围:**0~65535;TCP/UDP;端口占用/释放

范围0~1023,知名端口,提前保留出来的端口;

范围>=1024,随机高端口,随机产生;

TCP协议:telnet服务[23];HTTP服务[80];HTTPS[443];SSH[22];FTP服务[20/21]

UDP协议:DNS服务[53];DHCP协议[67/68]

协议字段protocol:6,代表TCP协议;17代表UDP协议;

五元组------适用于高级ACL(源端口、目的端口、源IP、目的IP、协议号)

超时重传机制:RTTS,加权的平均往返时间(数据全丢)

TCP流量控制

TCP协议字段注释:

SYN:同步SYN,在连接建立时用来同步序号(当SYN=1,ACK=0时表示这是一个连接请求报文段,当对方同意建立连接时恢复一个SYN=1,ACK=1的报文段)。

seq-Sequence Number:表示这个TCP包的序列号(TCP协议拼凑接收到的收据包时,根据seq来确定顺序并且能够确定是否有数据包丢失)。

ack-acknowledgment Number:表示这个包的确认号。(首先确认已收到对方的多少数据,其次告诉对方接下来的包的seq要从ack确定的数值继续接力+1)。

FIN:终止FIN,用来释放连接。(当FIN=1时,表示此报文段的发送方的数据已发送完毕,并要求断开此连接)

窗口的功能:减少多次确认;缓存机制(备份);重传(存在丢包,在哪里丢,从哪里传)

以太网≤1500B;窗口的大小=一次性可发送的包个数。

TCP的端口号(区分应用程序的流量):FTP-21/20;HTTP-80;telnet-23;SMTP-25;HTTPS-443

注释:

1、源/目的端口:源/目的主机的应用程序端口号;

2、序号、确认序号:TCP可靠传输的关键部分。序号是本报文段发送数据组的第一个字节的序号(在TCP传输流中,每一个字节一个序号。如:e.g的序号为300,数据部分为100字节,则下一个报文段的序号为400),所以序号保证了TCP传输的有序性。确认序号,即Ack,指明下一个期待收到的字节序号,表明该序号之前所有数据已全部正确收到(确认序号只有当Ack=1是有效)。

3、数据偏移/首部长度:由于首部可能含有可选项内容,因此TCP头部的长度是不确定的,报头不包含任何可选字段则长度为20字节,4位首部长度字段所能表示的最大值为1111,转换为十进制为15,15*32/8=60,故报头最大长度为60字节。首部长度也叫数据偏移(首部长度实际指示了数据区在报文段中的起始偏移值)。

4、保留:为将来定义新的用途保留,为0.

5、控制位:

1)URG:紧急指针标志,为1时表示紧急指针有效,为0则忽略紧急指针。

2)ACK:确认序号标志,为1时表示确认号有效,为0表示报文中不含确认信息,忽略确认号字段。

3)PSH:push标志,为1表示是带有push标志的数据,指示接收方在接收到该报文段以后,应尽快将这个报文段交给应用程序,而不是在缓冲区排队。

4)RST:重置连接标志,用于重置由于主机崩溃或其他原因而出现错误的连接。或者用于拒绝非法的报文段和拒绝连接请求。

5)SYN:同步序号,用于建立连接过程,在连接请求中,SYN=1和ACK=0表示该数据段没有使用捎带的确认域,而连接应答捎带一个确认,即SYN=1和ACK=1。

6)FIN:finish标志,用于释放连接,为1时表示发送方已经没有数据发送了,即关闭本方数据流。

UDP------直播、会议、大流量、游戏等应用数据使用的传输协议。

**UDP传输过程:**不提供重传机制,占用资源少,处理效率高。

相关推荐
honsor1 小时前
精准监测 + 实时传输!网络型温湿度传感器,筑牢环境数据管理防线
网络·物联网
专家大圣2 小时前
远程调式不复杂!内网服务器调试用对工具很简单
运维·服务器·网络·内网穿透·cpolar
拾忆,想起3 小时前
Dubbo配置方式大全:七种配置任你选,轻松玩转微服务!
服务器·网络·网络协议·微服务·云原生·架构·dubbo
2501_941142933 小时前
云原生微服务环境下服务熔断与降级优化实践——提升系统稳定性与容错能力
java·大数据·网络
国科安芯4 小时前
航天医疗领域AS32S601芯片的性能分析与适配性探讨
大数据·网络·人工智能·单片机·嵌入式硬件·fpga开发·性能优化
zhurui_xiaozhuzaizai4 小时前
MoE模型的核心架构---专家网络---门控网络/路由器
网络·架构
普罗米修斯Aaron_Swartz6 小时前
云主机(容器)内实现本地VNC访问
网络·docker
xinxinhenmeihao6 小时前
爬虫如何使用代理IP才能不被封号?有什么解决方案?
爬虫·网络协议·tcp/ip
whatever who cares6 小时前
斑马打印机配置网络/打印标签过程记录
网络
云计算练习生6 小时前
渗透测试行业术语扫盲(第二篇)—— 安全基础概念类术语
网络·安全·渗透测试·渗透测试术语·渗透测试概念