科技小数据|零基础学网络,小白入门须知,传输层TCP及UDP协议详解,两分钟掌握


一、传输层【重点掌握TCP三次握手四次挥手】
传输层定义了主机应用程序之间端到端的连通性 。 传输层中最为常见的两个协议分别是传输控制协议TCP(Transmission Control Protocol)和用户数据包协议UDP(User Datagram Protocol) 。

科技小数据|零基础学网络,小白入门须知,传输层TCP及UDP协议详解,两分钟掌握
本文插图

lTCP是一种面向连接的传输层协议 , 可提供可靠的传输服务 。
二、TCP端口号

科技小数据|零基础学网络,小白入门须知,传输层TCP及UDP协议详解,两分钟掌握
本文插图

TCP端口号
1、端口分为知名端口和动态端口 。
2、有些网络服务会使用固定的端口 , 这类端口称为知名端口 , 端口号范围为0-1023 。 如FTP、HTTP、Telnet、SNMP服务均使用知名端口 。
3、动态端口号范围从1024到65535 , 这些端口号一般不固定分配给某个服务 , 也就是说许多服务都可以使用这些端口 。 只要运行的程序向系统提出访问网络的申请 , 那么系统就可以从这些端口号中分配一个供该程序使用 。
总结:一句话 , 端口号用来区分不同的网络服务 。
三、TCP头部&UDP头部

科技小数据|零基础学网络,小白入门须知,传输层TCP及UDP协议详解,两分钟掌握
本文插图

TCP头部
TCP通常使用IP作为网络层协议 , 这时TCP数据段被封装在IP数据包内 。
TCP数据段由TCP Header(头部)和TCP Data(数据)组成 。 TCP最多可以有60个字节的头部 , 如果没有Options字段 , 正常的长度是20字节 。
TCP Header是由如上图标识的一些字段组成 , 这里列出几个常用字段 。
1.16位源端口号:源主机的应用程序使用的端口号 。
2.16位目的端口号:目的主机的应用程序使用的端口号 。 每个TCP头部都包含源和目的端的端口号 , 这两个值加上IP头部中的源IP地址和目的IP地址可以唯一确定一个TCP连接 。
3.32位序列号:用于标识从发送端发出的不同的TCP数据段的序号 。 数据段在网络中传输时 , 它们的顺序可能会发生变化;接收端依据此序列号 , 便可按照正确的顺序重组数据 。
4.32位确认序列号:用于标识接收端确认收到的数据段 。 确认序列号为成功收到的数据序列号加1 。
5.4位头部长度:表示头部占32bit字的数目 , 它能表达的TCP头部最大长度为60字节 。
6.16位窗口大小:表示接收端期望通过单次确认而收到的数据的大小 。 由于该字段为16位 , 所以窗口大小的最大值为65535字节 , 该机制通常用来进行流量控制 。
7.16位校验和:校验整个TCP报文段 , 包括TCP头部和TCP数据 。 该值由发送端计算和记录并由接收端进行验证 。

科技小数据|零基础学网络,小白入门须知,传输层TCP及UDP协议详解,两分钟掌握
本文插图

UDP头部
【科技小数据|零基础学网络,小白入门须知,传输层TCP及UDP协议详解,两分钟掌握】UDP报文分为UDP报文头和UDP数据区域两部分 。 报头由源端口、目的端口、报文长度以及校验和组成 。 UDP适合于实时数据传输 , 如语音和视频通信 。 相比于TCP , UDP的传输效率更高、开销更小 , 但是无法保障数据传输的可靠性 。 UDP头部的标识如下:
1.16位源端口号:源主机的应用程序使用的端口号 。
2.16位目的端口号:目的主机的应用程序使用的端口号 。
3.16位UDP长度:是指UDP头部和UDP数据的字节长度 。 因为UDP头部长度为8字节 , 所以该字段的最小值为8 。
4.16位UDP校验和:该字段提供了与TCP校验字段同样的功能;该字段是可选的 。
详细的视频讲解欢迎以下专栏视频进行学习 , 适合零基础学网络的朋友:
四、TCP建立连接的过程


推荐阅读