美文网首页
传输层🌟

传输层🌟

作者: 幺姨母 | 来源:发表于2020-10-08 14:41 被阅读0次

端口

使用端口来标记不同的网络进程,16bits表示(0~65535)
常用端口

FTP HTTP HTTPS DNS TELNET
21 80 443 53 23

UDP协议🌟

UDP:用户数据报协议

数据报:对应用层传下来的数据,不拆分,不合并

因此UDP数据报的长度主要由应用层传输的数据长度决定

UDP协议的特点
无连接协议:网络进程之间通信之前不需要提前建立连接
不保证可靠的交付数据:想发就发,无法保证数据在网络中是否丢失
面向报文传输:数据报中的数据是应用层直接传来的数据,不合并不拆分
没有拥塞控制:不会感知网络是否拥塞,无论是否拥塞都会直接发送报文
首部开销很小:总共八字节,源端口、目的端口、长度、校验和
传输速率:UDP快

TCP协议特点和首部🌟

TCP:传输控制协议

TCP是面向连接的协议:进程通信要建立连接、管理连接
TCP是端到端的通信
TCP提供可靠传输
TCP提供全双工的通信
TCP面向字节流:将应用层传来的数据当成一系列的字节流,可能对用户数据进行拆分、合并

TCP头部

除了可选,20-60字节
序号:32bits,用来标记传输的字节,是数据首字节序号
确认号:32bits,一个字节一个序号,期待收到数据首字节的序号,确认号为N,表示N-1及之前的数据都被收到了
数据偏移:数据偏离首部的距离
TCP标记:URG、ACK、PSH、RST、SYN、FIN

窗口:指明允许对方发送的数据量
紧急指针:紧急数据在报文的位置
TCP选项:最多40字节,支持未来的拓展

TCP的可靠传输🌟

停止等待协议(超时重传,每发送一个消息,都需要设置一个定时器)

  1. 发送的消息在路上丢失
  2. 确认的消息在路上丢失
  3. 确认的消息很久才到

是最简单的可靠传输协议
但是对信道的利用率不高

连续ARQ协议(滑动窗口:自动重传请求,批量发送数据,收到确认后窗口往前推动;累计确认)

TCP的可靠传输基于连续ARQ协议
TCP的滑动窗口以字节为单位

重复确认应答
选择重传:在TCP选项(可选)中,存储需要重传的字节段起始和终止序号

TCP的流量控制🌟

让发送方发送速率不要太快
使用滑动窗口来实现
首部窗口指明允许对方发送的数据量

如果窗口大小的消息在传输途中丢失,可能造成死锁局面,因为这个消息没有重传的机制

因此,出现了坚持定时器。当发送方接收到窗口为0的消息,就启动坚持定时器,坚持定时器每隔一段时间发送一个窗口探测报文

TCP的拥塞控制🌟

流量控制考虑点对点的通信量的控制
拥塞控制考虑整个网络,是全局性的考虑

报文超时则认为是拥塞

慢启动算法
由小到大逐渐增加发送数据量
每收到一个报文确认窗口大小变为原来的两倍

拥塞避免算法
存在一个慢启动阈值,窗口大小到达阈值后,只要网络不拥塞,即报文不超时,就试探着调大窗口,每次将窗口大小加一

三次握手🌟

四次握手🌟

socket编程🌟

相关文章

  • 传输层

  • 传输层

    摘自https://www.cnblogs.com/whgk/p/6118206.html 通过mac地址可以找到...

  • 传输层

    传输层的功能:传输层寻址和端口;无连接服务和面向连接服务 UDP协议:UDP数据报,UDP校验 TCP段:TCP连...

  • 传输层

    TCP和UDP TCP:提供可靠的通信运输。是面向连接的,可靠的流协议。它充分实现了数据传输时的各种控制功能,可以...

  • 传输层

    传输层需要完成的功能 为网络应用程序提供接口 为应用程序提供访问网络的途径 多路复用/多路分解机制 多路复用表示从...

  • 传输层

    在网络层之上,是传输层。由于网络层提供的尽力而为的服务,不保证数据传输的准确性,于是传输层提供了保证准确性的 TC...

  • 传输层

  • 传输层

  • 传输层

    传输层 传输层是OSI模型中第 4 层。 传输层的主要作用是直接向在不同主机上运行的应用程序进程提供通信服务。 传...

  • 传输层

    ICMP UDP TCP TCP的三次握手 TCP四次挥手 TCP状态机Tcp_status_map.jpg

网友评论

      本文标题:传输层🌟

      本文链接:https://www.haomeiwen.com/subject/eafkpktx.html