TCP包头、TCP为什么安全可靠、UDP和TCP的区别、http协议
我要成为嵌入式高手之3月8日Linux高编第十八天!!
__________________________________________________
学习笔记
TPC包头

1、序号
发送端发送数据包的编号
2、确认号
已经确认接收到的数据的编号,只有当ACK为1时,该位才有用
3、首部长度
数据前面的称之为头部
6位标记位 每一个标记位占一位
URG紧急标记位
ACK确认标记位
PSH若置为1这一数据段不在缓存区里等待,直接优先处理
RST断开连接标记位
SYN请求标记位 置一建立连接的过程
FIN结束标记位 置一释放连接的过程
4、校验和
目的是保证数据完整性
TCP为什么安全可靠
1、在通信之前建立三次握手连接
SYN(字段)
SYN+ACK
ACK
2、在通信过程中,通过序列号和确认号保障数据传输的完整性
序列号和确认号的规律:
本次发送的序列号 == 对方上次接收到的确认号
本次发送确认号 == 上次接收到的序列号 + 实际接收的长度
在传输过程中使用滑动窗口实现流量控制
3、在通信结束后使用四次挥手结束连接保障数据传输的完整性
UDP和TCP的区别
1、UDP和TCP都是传输层的协议
2、UDP实现机制简单、资源开销小、不安全不可靠
3、TCP实现机制复杂、资源开销大、安全可靠
4、UDP是无连接的、TCP是有连接的、UDP是以数据包形式传输、TCP是以流的方式传输
http协议
1、URL
<协议>://<主机>:<端口>/<路径>
协议:HTTP 80端口 TCP
HTTPS 443端口 TCP
主机:域名 -> 域名解析服务器 -> IP地址
端口:可以省略,有默认端口
路径:相要获取的对应的资源
2、HTTP交互过程:
1、建立TCP链接
2、发送HTTP请求报文
3、回复HTTP响应报文
4、断开TCP链接
API网站IP
103.205.5.249:80
相关文章:
TCP包头、TCP为什么安全可靠、UDP和TCP的区别、http协议
我要成为嵌入式高手之3月8日Linux高编第十八天!! __________________________________________________ 学习笔记 TPC包头 1、序号 发送端发送数据包的编号 2、确认号 已经确认接收到的数据的编号,只有当ACK为1时,该位才有用 …...
Android使用WebView打开内嵌H5网页
Android打开外部网页链接请参考上一篇文章 https://public.blog.csdn.net/article/details/136384559 继上篇,新建assets文章夹,将H5的网页资源放到此文件夹下 把H5的资源文件都拷进来 这个时候,将添加打开本地网页的代码: //打…...
UDP实现文件的发送、UDP实现全双工的聊天、TCP通信协议
我要成为嵌入式高手之3月7日Linux高编第十七天!! ———————————————————————————— 回顾 重要程序 1、UDP实现文件的发送 发端: #include "head.h"int main(void) {int sockfd 0;struct sockaddr_i…...
Yocto - Project Quick Build
欢迎光临! 这篇简短的文档将向您介绍使用 Yocto 项目构建典型镜像的过程。本文还介绍了如何为特定硬件配置构建。您将使用 Yocto Project 构建一个名为 Poky 的参考嵌入式操作系统。 Welcome! This short document steps you through the process for a typical i…...
深入探讨C++中的可变参数列表(Variadic Templates)
文章目录 导言可变参数列表的基本用法使用std::initializer_list应用场景 导言 在C编程中,处理可变数量参数的能力是一种非常有用的功能。通过可变参数列表,你可以编写更加通用和灵活的函数,从而提高代码的可读性和重用性。本文将详细介绍C中…...
MS2548 国产自动方向控制、半双工 RS-485 收发器 替代MAX13487
MS2548 国产自动方向控制、半双工 RS-485 收发器 替代MAX13487 北京冠宇铭通科技有限公司 肖小姐 产品简述 MS2548 是一个 5V 供电、半双工 RS-485 收发器。 芯片具有自动换向控制功能,可用于隔离485 端口,驱动器输入与使能信号一起配合控制芯片的状态&…...
数据库大师之路:Oracle在线学习平台全指南!
介绍数据库是由甲骨文公司开发的一款关系数据库管理系统(RDBMS),在数据库领域具有领先地位,并且以其系统可移植性而闻名。以下是对Oracle数据库的详细介绍: 市场地位:Oracle数据库是目前世界上流行的关系数…...
如何在Windows系统部署Jellyfin Server并实现公网访问内网影音文件
文章目录 1. 前言2. Jellyfin服务网站搭建2.1. Jellyfin下载和安装2.2. Jellyfin网页测试 3.本地网页发布3.1 cpolar的安装和注册3.2 Cpolar云端设置3.3 Cpolar本地设置 4.公网访问测试5. 结语 1. 前言 随着移动智能设备的普及,各种各样的使用需求也被开发出来&…...
华为北向网管NCE开发教程(3)CORBA协议开发
华为北向网管NCE开发教程(1)闭坑选接口协议 华为北向网管NCE开发教程(2)REST接口开发 华为北向网管NCE开发教程(3)CORBA协议开发 如果你真的还有选择的余地,能用REST,尽量用REST&…...
【算法训练营】最长公共子序列,倒水问题,奶牛吃草(Python实现)
最长公共子序列 时间限制:1 sec 空间限制:256 MB 问题描述 给定两个 1 到 n 的排列 A,B (即长度为 n 的序列,其中 [1,n] 之间的所有数都出现了恰好一次)。 求它们的最长公共子序列长度。 输入格式 第一行一个整数 n &a…...
Armadillo:矩阵类、向量类、Cube类和泛型类
文章目录 矩阵类、向量类、Cube类和泛型类Mat<type>matcx_matCol<type>veccx_vecRow<type>rowveccx_rowvecCube<type>cubecx_cubefield<object_type>SpMat<type>sp_matsp_cx_mat运算符: − * % / ! < > <…...
【守护健康】小脑萎缩患者必备营养指南
当生活给予我们挑战,我们选择用科学和关爱予以回应。面对小脑萎缩这一难题,正确的营养补充不仅是一剂强心针,更是患者康复之路上的坚实伙伴。今天,让我们一起了解那些能够助力小脑萎缩患者的神奇维生素! 1. 维生素B群…...
lvs集群中NAT模式
群集的含义 由多台主机构成,但对外表现为一个整体,只提供一个访问入口,相当于一台大型的计算机。 横向发展:放更多的服务器,有调度分配的问题。 垂直发展:升级单机的硬件设备,提高单个服务器自身功能。 …...
FPGA——三速自适应以太网设计(2)GMII与RGMII接口
FPGA——以太网设计(2)GMII与RGMII 基础知识(1)GMII(2)RGMII(3)IDDR GMII设计转RGMII接口跨时钟传输模块 基础知识 (1)GMII GMII:发送端时钟由MAC端提供 下…...
【校园导航小程序】2.0版本 静态/云开发项目 升级日志
演示视频 【校园导航小程序】2.0版本 静态/云开发项目 演示 首页 重做了首页,界面更加高效和美观 校园指南页 新增了 “校园指南” 功能,可以搜索和浏览校园生活指南 地图页 ①弃用路线规划插件,改用SDK开发包。可以无阻通过审核并发布…...
深入揭秘Lucene:全面解析其原理与应用场景(二)
本系列文章简介: 本系列文章将深入揭秘Lucene,全面解析其原理与应用场景。我们将从Lucene的基本概念和核心组件开始,逐步介绍Lucene的索引原理、搜索算法以及性能优化策略。通过阅读本文,读者将会对Lucene的工作原理有更深入的了解…...
Java中synchronized关键字、ReentrantLock、volatile关键字是如何实现线程同步的。
在Java中,synchronized关键字、ReentrantLock和volatile关键字这三个是编程中常用于实现线程同步的机制,下面结合代码详细说明一下这三个关键字的用法。 1. synchronized关键字: synchronized关键字是Java语言提供的内置锁机制,…...
路由拦截器
路由拦截可以分为几种不同的类型,每种类型都有其特定的作用和适用场景。以下是常见的几种路由拦截类型及其用途: 身份验证拦截器: 作用: 检查用户是否已经登录或具有有效的身份认证,并根据认证状态决定是否允许用户访问…...
Springboot+vue的物业管理系统(有报告)。Javaee项目,springboot vue前后端分离项目。
演示视频: Springbootvue的物业管理系统(有报告)。Javaee项目,springboot vue前后端分离项目。 项目介绍: 本文设计了一个基于Springbootvue的物业管理系统,采用M(model)Vÿ…...
STM32的启动流程分析 和 一些底层控制的原理
阅读引言: 阅读本文之后, 你将对单片机, 甚至是嵌入式系统, 或者是传统的PC机系统的启动流程有一个大致的了解, 本文更加偏向于单片机的启动流程分析。 目录 一、基础知识 1.STM32系列的微控制器(mcu&…...
告别Confluence,我用开源Outline自建团队Wiki,两个月体验全分享(含Docker一键部署脚本)
从Confluence到Outline:开源Wiki系统的深度迁移实践 在知识管理工具的选择上,许多技术团队正面临一个关键转折点。随着商业SaaS产品定价策略的调整和数据主权意识的觉醒,越来越多的组织开始重新评估他们的知识库解决方案。作为一名长期使用Co…...
Qt QTreeView性能优化实战:告别QTreeWidget和QStandardItemModel,手写自定义Model提升10倍加载速度
Qt QTreeView性能优化实战:手写自定义Model实现万级数据秒加载 在开发需要展示海量数据的桌面应用时(比如日志分析工具、文件管理器或配置管理系统),QTreeView控件配合QStandardItemModel或QTreeWidget的方案往往会遇到明显的性能…...
MTK Camera调试实战:Dump Buffer定位花屏与竖线问题
1. 初识MTK Camera Dump Buffer调试技巧 第一次遇到手机摄像头预览画面出现彩色条纹时,我盯着屏幕愣了半天。作为刚入行的Camera调试工程师,这种花屏问题简直就像天书。直到同事教我用了MTK平台的Dump Buffer功能,才发现原来这些看似复杂的图…...
await FtpUploadFileAsync(orgTiffFilePath) 是否可以去掉 await
问题 1:await FtpUploadFileAsync(orgTiffFilePath) 是否可以去掉 await?回答是的,如果去掉 await,FtpUploadFileAsync 方法将以非阻塞的方式运行,调用它的代码会立即继续执行后续任务,而不会等待 FTP 上传…...
终极指南:如何使用Starscream压缩功能减少WebSocket数据传输量的最佳实践
终极指南:如何使用Starscream压缩功能减少WebSocket数据传输量的最佳实践 【免费下载链接】Starscream Websockets in swift for iOS and OSX 项目地址: https://gitcode.com/gh_mirrors/st/Starscream Starscream是一款专为iOS和OSX平台开发的Swift WebSock…...
HsMod插件终极指南:55项功能详解与快速上手教程
HsMod插件终极指南:55项功能详解与快速上手教程 【免费下载链接】HsMod Hearthstone Modification Based on BepInEx 项目地址: https://gitcode.com/GitHub_Trending/hs/HsMod HsMod是一款基于BepInEx框架开发的《炉石传说》增强插件,为玩家提供…...
MSP432P401R开发第一步:在CCS里正确导入DriverLib库并配置头文件路径(避坑指南)
MSP432P401R开发实战:从DriverLib库配置到工程模板搭建全解析 刚接触MSP432P401R的开发者往往会在第一步——配置CCS工程环境时遇到各种"坑"。这些看似基础的问题如果处理不当,可能导致后续开发效率大幅降低。本文将手把手带你完成从零开始的…...
实战复盘:我们如何用Elasticsearch+Kibana模板重构微服务报表模块,性能提升10倍
微服务报表架构革命:ElasticsearchKibana实现10倍性能跃迁 在微服务架构盛行的今天,报表模块的性能问题往往成为系统瓶颈。传统基于关系型数据库的报表方案,在面对海量数据聚合查询时,响应速度缓慢,用户体验急剧下降。…...
7款加密压缩包密码测试工具:ArchivePasswordTestTool技术深度解析
7款加密压缩包密码测试工具:ArchivePasswordTestTool技术深度解析 【免费下载链接】ArchivePasswordTestTool 利用7zip测试压缩包的功能 对加密压缩包进行自动化测试密码 项目地址: https://gitcode.com/gh_mirrors/ar/ArchivePasswordTestTool 在数字资产管…...
5分钟掌握大麦网自动化抢票脚本:告别手速烦恼的智能购票神器
5分钟掌握大麦网自动化抢票脚本:告别手速烦恼的智能购票神器 【免费下载链接】DamaiHelper 大麦网演唱会演出抢票脚本。 项目地址: https://gitcode.com/gh_mirrors/dama/DamaiHelper 还在为抢不到心仪的演唱会门票而烦恼吗?每次热门演出开票瞬间…...
