传输层协议:TCP协议,UDP协议
TCP:面向连接的、可靠的、基于字节流的传输层通信协议
UDP:无连接的传输协议,该协议称为用户数据报协议
传输层和应用层时间的关系
http在传输层是使用的TCP:TCP+80
https在传输层是使用的TCP:TCP+443
ftp在传输层是使用的TCP:TCP+21
SMTP在传输层是使用的TCP:TCP+25
POP3在传输层是使用的TCP:TCP+110
RDP在传输层是使用的TCP:TCP+3389
DNS在传输层是使用UDP,也可以用TCP(较少):UDP+53 or TCP+53
应用层协议和服务之间的关系
服务运行后在TCP或UDP的某个端口侦听客户端请求
TCP传送的协议数据单元是TCP报文段
UDP传送的协议数据单元是UDP报文或用户数据报
TCP概述:
TCP是面向连接的传输层协议(三次握手,四次挥手)
每条TCP连接只能有两个端点,每条TCP连接只能是点对点的(一对一)
TCP提供可靠交付的服务
TCP提供全双工通信
面向字节流
TCP连接的端点叫做套接字
端口拼接到IP地址即构成了套接字
TCP传输连接三个阶段:连接建立、数据传送、连接释放
TCP连接的建立是采用客户端服务器方式
主动发起连接建立的应用进程叫做客户端
被动等待连接建立的应用进程叫做服务器
三次握手:
第一次:建立连接时,客户端发送syn包(seq=j)到服务器,并进入SYN_SENT状态,等待服务器确认;SYN:同步序列编号
第二次:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(seq=k),即SYN+ACK包,此时服务器进入SYN_RECV状态
第三次:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED(TCP连接成功)状态,完成三次握手
四次挥手:
第一次:TCP客户端发送一个FIN,用来关闭客户到服务器的数据传送。
第二次:服务器收到这个FIN,它发回一个ACK,确认序号为收到的序号加1。和SYN一样,一个FIN将占用一个序号。
第三次:服务器关闭客户端的连接,发送一个FIN给客户端。
第四次:客户端发回ACK报文确认,并将确认序号设置为收到序号加1。
可靠传输的工作原理————停止等待协议
优点:简单
缺点:信道利用率太低
ARQ(自动重传请求):包括停止等待ARQ协议和连续ARQ协议,错误侦测、正面确认、逾时重传与负面确认继以重传等机制。
拥塞控制是一个全局性的过程,涉及到所有的主机、所有的路由器,以及与降低网络传输性能有关的所有因素
出现资源拥塞的条件:
对资源需求的总和 > 可用资源
流量控制往往指在给定的发送端和接收端之间的点对点通信量的控制,它所要做的就是抑制发送端发送数据的速率,以便使接收端来得及接收