当前位置: 首页 > news >正文

005.HCIA 传输层

传输层定义了主机应用程序之间端到端的连通性。传输层中最为常见的两个协议分别是传输控制协议TCP (Transmission Control Protocol)和用户数据包协议UDP (User Datagram Protocol)。

1、相关概念
a. 传输层的端口

端口范围:0-65535

  • 知名端口:0-1023,提前保留出来的端口

TCP协议:FTP[20/21] SSH[22] Telnet[23] HTTP[80] HTTPS[443]

UDP协议:DNS[53] DHCP[67/68]

连接:正式发送数据之前,提前建立好一种虚拟的“”“点到点”式的连接 = 单播模式

1、TCP

传输控制协议——面向连接的服务

  • 只适用于单播通信
  • 可以给与建立好的连接 灵活的对接下来的数据传递进行控制
  • 无法很好地满足及时性的业务要求(如,视频直播等),传递一些文件稳定性好
  • 感知上层数据大小,网络层不用做分片,符合传输大小

五元组:

  • Source IP 源IP
  • Destination IP 目的IP
  • Protocol 协议号
  • Source Port 源端口
  • Destination Port 目的端口
TCP 三次握手

TCP连接建立完毕之前,不会传递数据

  • ① seq=a 随机序列号 ;SYN:同步位(置为1),
  • ② seq=b 随机序列号; ack=a+1(确认收到对方的a报文,对方在发送报文从a+1开始发);SYN(置为1),ACK(置为1)
  • ③ seq=a+1(从a+1开始发送报文) ;ack=b+1(确认收到对方的b报文,对方在发送报文从b+1开始发);ACK(置为1)

TCP 传输过程

确认机制:

  • 三次握手中,小ack = 对方seq + 1
  • 数据传输时,小ack = 对方所传递的数据的最大值 +1

有序机制:

超时重传机制:

  • RTTS 加权的平均往返时间
TCP 流量控制

mss(Maximum segment size):最大报文长度

  • mss(1460) = mtu(1500) - tcp(20) - ipv4(20)

TCP 四次挥手

2、UDP

用户数据包协议——面向无连接的服务

  • 保证数据进行传输,但是UDP无法对传递的数据进行控制,如果想对数据做控制,此时借用应用层实现。
  • 可以很好地满足即时性的要求,对时间要求比较高
  • UDP 对于上层传递的数据“全盘接受” 没有分片机制,用于相对较小的流量

http://www.lryc.cn/news/268181.html

相关文章:

  • LLM之RAG实战(八)| 使用Neo4j和LlamaIndex实现多模态RAG
  • 【SpringCloud笔记】(10)消息总线之Bus
  • 超酷的爬虫可视化界面
  • 【kafka消息里会有乱序消费的情况吗?如果有,是怎么解决的?】
  • 【PID精讲12】基于MATLAB和Simulink的仿真教程
  • 手机无人直播:解放直播的新方式
  • ios 之 数据库、地理位置、应用内跳转、推送、制作静态库、CoreData
  • Django(三)
  • vscode括号颜色突然变成白色的了,怎么解决
  • 测试服务器带宽(ubuntu)
  • 【WPF】使用Behavior以及ValidationRule实现表单校验
  • ArcGIS渔网的多种用法
  • C++ 中使用 std::map 的一个示例
  • python虚拟环境及其在项目实践中的应用
  • 普中STM32-PZ6806L开发板(烧录方式)
  • 基于单片机设计的指纹锁(读取、录入、验证指纹)
  • HarmonyOS - 基础组件绘制
  • AR智慧校园三维主电子沙盘系统研究及应用
  • web前端项目-七彩夜空烟花【附源码】
  • 在k8s中将gitlab-runner的运行pod调度到指定节点
  • 1.解决父组件传数据给子组件太慢,导致子组件获取不到合适数据渲染出错问题2.vue中props传递异步数据,子组件用watch监听
  • SpringMVC之获取请求参数和域对象共享数据
  • IntelliJ IDEA Community(社区版)下载及安装自用版
  • 【C语言:编译、预处理详解】
  • 【宇宙猜想】AR文创入驻今日美术馆、北京天文馆等众多展馆,在AR互动中感受科技魅力!
  • 前端面试题html
  • AOSP源码下载方法,解决repo sync错误:android-13.0.0_r82
  • TCP:IP原理
  • Java 中 Lambda 表达式的使用
  • 【IO】IO模型与零拷贝