计算机网络(六)

运输层

前面的物理层、数据链路层、网络层 它们共同解决了将主机通过网络互联起来所面临的问题、实现了主机到主机之间的通信

但是在网络中实际通信的是位于通信两端主机中的进程。
如何为不同主机的进程提供直接的通信服务 是运输层的任务,运输层的协议又叫做端到端的协议

一、进程端口号、复用与分用的概念

进程端口号

发送方的复用和接收方的分用

通过视频了解端口号在数据传输中的作用
视频5:58处

二、TCP和UDP的区别

UDP不需要建立连接 ,可以直接发送数据

TCP需要进行三次握手建立连接 、报文发送结束之后需要进行4次挥手断开连接

UDP协议支持单播、多播、广播

TCP协议只支持单播

UDP是面向报文 的协议
TCP是面向字节流 的协议、这是TCP能够进行拥塞控制、流量控制的前提。

UDP 向上层提供的是不可靠传输服务 、可能存在丢失、误码等情况
TCP 向上层提供可靠传输服务 ,不存在误码、丢失、乱序等情况

UDP和TCP数据报的首部格式 对比

总结:

三、TCP的流量控制

一般情况下,我们希望数据传输的越快越好,但是如果接收方来不及接收大量数据,就会导致数据丢失,所以就需要流量控制

流量控制是利用滑动窗口机制实现的,具体流程观看视频0:44处

四、拥塞控制

在某一时刻内,对网络资源的需求量超出了该资源所能提供的可用部分,网络性能就要变坏,这种情况就叫拥塞。

  • 计算机中的带宽,交换节点的缓存等都是网络资源。

如果出现拥塞而不控制,整个网络的吞吐量将随输入负荷的增大而下降。

拥塞控制有四种算法:

  • 慢开始
  • 拥塞避免
  • 快重传
  • 快恢复

五、TCP超时重传的时间选择

六、TCP可靠传输的实现

七、TCP连接的建立与释放

TCP连接的建立

TCP是面向连接的运输层协议,在数据通信之前需要与服务段建立连接。

**"三次握手"**是TCP协议建立连接步骤的俗称。

第一次握手:
客户端 发送同步代码SYN=1 ,表明这是一个TCP请求报文段;序号字段seq=x 被设置了一个初始值x作为TCP客户进程所选择的初始序号。(TCP规定,SYN=1的报文段不能携带数据,并且要消耗一个序号)
第二次握手:

服务端发送确认报文段,同步代码SYN=1,ACK=1 ,表明这是一个确认报文段,序号字段seq=y 是服务进程选择的初始序号,ack=x+1是服务段对第一次握手seq=x的确认 (因为该报文段SYN=1,所以也不能携带数据)
第三次握手:

客户端发送ACK=1确认字段序号字段seq=x+1 是第一次握手seq=x的序号被消耗了,所以要+1,ack=y+1 是对第二次握手seq=y的确认。(TCP规定,普通的确认报文可以携带数据,如果不携带数据则不消耗序号,所以下一次(三次握手之后)客户端请求携带数据,序号seq仍然等于x+1)

TCP连接的释放

四次挥手

四次挥手详细过程

TCP报文段首部格式

相关推荐
埃伊蟹黄面1 分钟前
应用层HTTP协议
linux·网络·网络协议·http
IMPYLH6 分钟前
【无标题】
linux·运维·服务器·网络·bash
woohu12322 分钟前
沃虎10G及以上速率连接器与变压器如何解锁下一代高速互联的潜能
网络
PinTrust SSL证书28 分钟前
Sectigo(Comodo)企业型OV通配符SSL
网络·网络协议·网络安全·小程序·https·ssl
Black蜡笔小新31 分钟前
国标GB28181视频监控平台EasyCVR赋能平安乡村建设,构筑乡村治理“数字防线”
java·网络·音视频
优秀是一种习惯啊34 分钟前
DPDK 学习第一天
网络·dpdk
pengyi8710151 小时前
静态IP代理稳定性测试核心指标,判断IP质量的关键
网络
Johnstons1 小时前
网络可观测性落地指南:从“出了问题才排查“到“实时感知全网状态“
开发语言·网络·php
路溪非溪1 小时前
wireshark抓包看ip协议
网络·tcp/ip·wireshark
小梦爱安全1 小时前
Ansible剧本1
java·网络·ansible