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

day 28 HTTP协议

一、TCP粘包问题

TCP发送数据是连续的,两次发送的数据可能粘连成一包被接收到

解决粘包问题方法:
        1.接收指定长度:(不稳定) 
        2.睡眠:(效率低)
            让每次发送间设定时间间隔
        3.将两次数据包间添加间隔标志
UDP MTU最大传输单元(理论:65535   实际:1500)

二、TCP数据包结构

三、TCP的三次握手和四次挥手

1.TCP三次握手:
    SYN 
    SYN + ACK 
    ACK 

2.四次挥手(四次挥手也可能成为三次挥手): 
    (1)FIN  
            ACK + FIN 
            ACK 

    (2)FIN 
            ACK 
            FIN 
            ACK 

3.传输过程中通过序号和确认号保障数据传输的完整性 
    PSH  
    ACK 

四、TCP和UDP传输方式:
1.UDP实现方式简单
  资源开销比较小 
  UDP不安全、不可靠
  UDP是无连接的,面向数据包的传输方式
2.TCP实现方式复杂
  资源开销比较大 
  TCP安全、可靠 
  TCP是面向连接的,面向字节流传输方式

五、HTTP协议:

1、HTTP:超文本传输协议,在协议的应用层 

2、万维网:大型的信息联网存储所 
3、统一资源定位符:简称URL
    1.协议://主机:端口号/资源路径
    例如:https://www.baidu.com  

    协议:https 加密
          http  非加密
    主机:IP地址 
    端口号: 80 
           443
    资源路径: 默认为 /  主页

短连接:想要通信时建立链接 
长连接:通信前建立链接,通过新过程中链接一直保持

六、客户端拿到服务器中的网页文件步骤
1.客户端向主机发送TCP链接请求
2.服务器收到请求后,与客户端链接成功

3.客户端向发送HTTP请求报文,告诉服务器想要的数据
4.服务器回复HTTP响应报文,将客户端要的数据发回

5.双方关闭通信 

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • C语言第20天笔记
  • 在Java程序中执行Linux命令
  • 对AI大模型的擅长能力的了解
  • 工作 sql 数据库创建 表的修改 插入数据
  • 数据库系统 第17节 数据仓库
  • 分享|华为测试OD岗面试流程
  • 高效记录与笔记整理的策略:工具选择、结构设计与复习方法
  • CentOS 上安装 Java 17
  • 【Bifrost】ubuntu24.04 远程构建及clion设置编码风格google
  • docker入门教程
  • kettle的Javascript组件获取T-1天和T+1天
  • 【区块链+金融服务】河北股权交易所综合金融服务平台 | FISCO BCOS应用案例
  • 【已成功EI检索】第三届机电一体化技术与航空航天工程国际学术会议(ICMTAE 2023)
  • 计算机视觉中的上采样与下采样:深入浅出实例代码解析
  • 具身智能成败之关键!干货长文首次全面回顾具身智能领域中的视觉-语言-动作模型!
  • 网络传输文件的问题
  • 【Amaple教程】5. 插件
  • 2017届校招提前批面试回顾
  • Facebook AccountKit 接入的坑点
  • HTTP--网络协议分层,http历史(二)
  • orm2 中文文档 3.1 模型属性
  • QQ浏览器x5内核的兼容性问题
  • React的组件模式
  • 纯 javascript 半自动式下滑一定高度,导航栏固定
  • 理解在java “”i=i++;”所发生的事情
  • 无服务器化是企业 IT 架构的未来吗?
  • 哈罗单车融资几十亿元,蚂蚁金服与春华资本加持 ...
  • ​经​纬​恒​润​二​面​​三​七​互​娱​一​面​​元​象​二​面​
  • ‌分布式计算技术与复杂算法优化:‌现代数据处理的基石
  • #### golang中【堆】的使用及底层 ####
  • #13 yum、编译安装与sed命令的使用
  • #如何使用 Qt 5.6 在 Android 上启用 NFC
  • $LayoutParams cannot be cast to android.widget.RelativeLayout$LayoutParams
  • (1)(1.8) MSP(MultiWii 串行协议)(4.1 版)
  • (Bean工厂的后处理器入门)学习Spring的第七天
  • (react踩过的坑)Antd Select(设置了labelInValue)在FormItem中initialValue的问题
  • (深度全面解析)ChatGPT的重大更新给创业者带来了哪些红利机会
  • (未解决)jmeter报错之“请在微信客户端打开链接”
  • (转)eclipse内存溢出设置 -Xms212m -Xmx804m -XX:PermSize=250M -XX:MaxPermSize=356m
  • (转)一些感悟
  • **python多态
  • **PyTorch月学习计划 - 第一周;第6-7天: 自动梯度(Autograd)**
  • *++p:p先自+,然后*p,最终为3 ++*p:先*p,即arr[0]=1,然后再++,最终为2 *p++:值为arr[0],即1,该语句执行完毕后,p指向arr[1]
  • .desktop 桌面快捷_Linux桌面环境那么多,这几款优秀的任你选
  • .NET MVC 验证码
  • .NET 通过系统影子账户实现权限维持
  • .NET/C# 的字符串暂存池
  • .NetCore项目nginx发布
  • .NET简谈设计模式之(单件模式)
  • .net快速开发框架源码分享
  • .Net转Java自学之路—基础巩固篇十三(集合)
  • /etc/skel 目录作用
  • ::什么意思
  • @antv/g6 业务场景:流程图
  • @Bean有哪些属性