首页 > 编程知识 正文

传输层的简述与协议介绍的区别,传输层有哪些协议?分别适用于什么情况

时间:2023-05-03 15:50:16 阅读:266610 作者:695

一、概念的认识:
传输层是整个网络体系结构中的关键层次之一,间于网络层和应用层之间;
主要负责向两个主机中进程之间的通信提供服务。由于一个主机同时运行多个进程,因此运输层具有有复用和分用功能。传输层在终端用户之间提供透明的数据传输,向上层提供可靠的数据传输服务。传输层在给定的链路上通过流量控制、分段/重组和差错控制来保证数据传输的可靠性。传输层的一些协议是面向链接的,这就意味着传输层能保持对分段的跟踪,并且重传那些失败的分段。
二、四大功能:
(1) 分割与重组数据
(2) 按端口号寻址
(3) 连接管理
(4) 差错控制和流量控制,纠错的功能
传输层要向会话层提供通信服务的可靠性,避免报文的出错、丢失、延迟时间紊乱、重复、乱序等差错。
三、两大协议介绍:
(一)、TCP协议(传输控制协议)
1、特点:
TCP是面向连接的、可靠的进程到进程通讯的协议;
TCP提供全双工服务,即数据可在同一时间双向传输;
2、TCP报文段:
TCP将若干个字节构成一个分组,叫报文段,TCP报文段封装在ip数据包中

源端口号/目标端口号:实现端到端的传输,每个应用程序都是其自己特殊的端口号(例如,我用QQ给别人发消息,别人也是用QQ接收的,肯定不会是微信,这就是端口号在起作用。)
序 号:发送端为每个字节进行编号,便于接收端正确重组
确定号:用于确认发送端的信息
窗口大小:用于说明本地可接收数据段的数目,窗口大小是可变的
URG: 紧急指针位(1代表开启,0代表关闭)
PSH: 快速接收传递给应用层(1开,0关)
备注: 这两个的区别在于是否在经过缓存处理,URG不经过缓存,直接提交应用层,PSH需要经过缓存,等一批报文段到齐,再直接发送到应用层。
SYN: 建立、连接的请求标记(1开,0关)
FIN: 请求断开(1开,0关)
ACK: 确认位(1开,0关)
RST: 重新建立连接、发送(等于重置,1开,0关)
校验和: 检验数据传输是否出错

3、TCP连接与断开:
TCP建立连接的过程被称为三次握手:


TCP断开连接的过程被称为四次挥手:


注意:断开连接必须要是双向的,这也就是为什么会有第二步和第三步的区别了,如果只有第一步到第二部,只是断开了PC1到PC2的通讯,此时PC1不能给PC2发信息,但是PC2仍然可以给PC1发送信息,这是半关闭的状态,只有出现了第三步,PC2同时发送FIN=1和ACK=1,PC2和PC1也断开了连接,这才是双向断开连接。
4、常见的协议与端口:
21 : FTP (控制连接端口)
20 : FTP (数据连接端口)
23 : TELNET(远程登录协议)
25 : SMTP(发送邮件协议)
80 : HTTP (超文本传输协议)
110 : POP3(邮件接收协议)

(二)、UDP协议(用户数据报协议)
相对TCP来说,UDP是一种非常简单的协议,在网络层的基础上实现了应用进程之间端到端的通信。
UDP讲究的是高效率传输,它提供的是一种无连接的、不可靠的数据传输方式,在数据传输过程中没有流量控制和确认机制,数据报可能会丢失、延迟、乱序到达信宿。 只是提供了利用校验和检查数据完整性的简单差错控制,属于一种尽力而为的数据传输方式。
UDP常见的端口:
69 : TFTP(简单的文件传输协议)
111 : RPC(远程过程调用)
123 : NTP(网络时间协议)

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。