传输层协议

发布于:2022-12-26 ⋅ 阅读:(396) ⋅ 点赞:(0)

在这里插入图片描述

传输层协议

TCP/IP协议

最早的传输协议叫NCP协议
NCP:网络核心协议
网络核心协议(NCP)管理对 NetWare 服务器资源的访问。NCP 向 NetWare 文件共享协议(即NFSP:NetWare File Sharing Protocol)发送过程调用消息,处理 NetWare 文件和打印资源请求。 NCP 是用于 NetWare 服务器和客户机之间传输信息的主要协议。
之后由于功能限制,被TCP/IP协议替代

其实TCP/IP协议是一个协议栈(协议族),包括TCP、IP、UDP、ICMP、RIP、TELNET、FTP、SMTP、ARP等许多协议,但由于TCP/IP协议用的最多,为了方便记忆,将这些协议统称为tcp/IP协议

TCP/IP分层

TCP/IP协议的分层模型:

在这里插入图片描述
目前大都数公司都使用的是4层模型,华为用的是5层模型

常见的TCP/IP协议及端口号

应用层

TCP协议:

HTTP:超文本传输协议 (端口号80)
HTTPS:加密的超文本传输协议 (端口号443)
FTP:文本传输协议 (端口号20.21)

UDP协议:

TFTP:简单文本传输协议 (端口号69)

TCP/UDP都可以用的协议

DNS:域名解析协议 (端口号53)

传输层

TCP协议:传输控制协议
UDP协议:用户数据报协议

网络层

ICMP:检测两台相互通信的主机联通性
IMP:主播协议
ARP:将IP地址转换成MAC地址,地址解析
RARP:逆地址解析

物理层

以太网协议

IEEE802.3:有限局域网
IEEE802.11:无线局域网

TCP协议的作用

TCP协议是面向链接的,有可靠的重传功能,同时提供全双共服务,每一个TCP都有缓存和接收缓存功能,用来临时存储数据。

UDP协议的作用

UDP协议传输速度快,是不可靠的传输协议

TCP协议的特性

Tcp工作在传输层
1.传输稳定
2.重传功能
3.缓存功能
4.全双工模式
5.错误检查
6.流量控制
7.将数据打包,分段,重组
8.确认传输机制

UDP协议的特性

1.只面向报文
2.传播速度快
3.不创建链接
4.首部开销小

TCP报文段

在这里插入图片描述

报文段解析

源端口号和目标端口号

16代表的是16位1,转换成十进制就是65535,范围为0-65535,这里的单位是(个),说明最多有65536个端口可以互通
端口号数量:2^16等于26636

端口号的作用

区别系统进程,准确找出被传输主机的地址,检测相互通信主机的联通性,除非进程结束,否则两个互通的端口号是不可能被释放的

端口号分为

服务端:端口号位固定
客户端:端客号是随机的
0-1023位管理员端口号,仅管理员可用
1024-495151是用户端口号
32768-60999是网页端口号

序号

为每个字节编号,便于接收方重组

确认号(ack)

当A给B发送一个请求,B收到后回复给A的信息里是包含确认号的(ack)
假设A发送的请求序号是X,那么B回复的信息里,确认号就是x+1,表示我接收到你的信息了

首部长度

表示TCP报文的首部长度为4位,但iana组织又规定首部长度的字节最小为20字节,最大为60字节

保留

没有实际意义,里面是空的

控制位

URG:紧急位,当URG为1时,表示紧急指针里的内容需要紧急处理
ACK:已建立链接时 AGK=1 未建立链接时 AGK=0
PSH:一般紧急位,当PSH=1时,数据片里面的数据需要优先处理
RST:如果RST=1,说明于主机的连接出了错误,有可能时主机崩溃,也有可能时防火墙的原因,必须释放连接,然后在重新建立连接
SYN:当SYN=1,ack(确认位)=1时,表示两台机器正在连接,当SYN=1,ack(确认位)=0时,表示发送方正在请求连接
FIN:请求与对方机器断开连接

窗口大小

AB双方商量后,确认好发送数据的大小值

紧急指针

与URG相互连同,当URG为1,表明这里的数据需要紧急处理

选项性

增强每项功能

TCP3次握手的原理

在这里插入图片描述
当PC1第一次请求连接PC2时
1.会先发送一个SYN报文请求
SYN(同部位)=1
Seq(序号)=X(这里的X是任意值,可以为B,可以为1.2.3.4.5.6)

2.PC2接收到PC1的请求,会回复一个SYN/ACK(同意连接)报文
SYN=1 ACK=1(同意连接)
Seq=y
Ack(确认号,确认收到PC1的请求)=X+1(表示接收到PC1的请求,所有将发送请求的序号添加进来)

  1. PC1收到同意请求后,会回复一个ACK报文,同时也会将PC2回复的序号添加进来
    ACK=1 SYN=1 Seq(序号)=X+1(因为是第二次回复PC2,所以这里的序号要加上1,表示是第二次发送,以此类推)
    Ack(确认号)=y+1

以上是三次握手的原理,表示相互通信了三次

为什么一定是三次握手

因为三次通信是两次完整的通信,一来一回才算一次完整的通信


网站公告

今日签到

点亮在社区的每一天
去签到