http相关总结

————————1.Http常见的状态码—————————

200:请求成功,一般用于get和post请求

204:服务器处理成功但没有返回内容

301:地址永久移动

302:地址被临时移动

400:客户端请求语法错误

401:请求要求用户身份认证

403:服务器拒绝这个请求

404:服务端找不到资源

405:客户端请求中的方法被禁止

414:请求的url过长,服务器无法处理

415:服务器无法处理请求的格式

500:服务器内部错误

505:服务器不支持请求的HTTP协议版本

————————————2.TCP,UDP的区别————————————

TCP和UDP都是传输层的协议

TCP是可靠的通信传输协议 ,UDP相对不稳定,常用于广播

*TCP是面向连接的协议(在收发数据前必须和对方建立可靠的连接),从而可以控制通信流量的浪费

*TCP充分实现了数据传输时各种控制功能,可以进行丢包的重发控制,还可以对顺序乱掉的分包进行顺序控制

*TCP通过检验、序列号、确认应答、重发控制、连接管理以及窗口控制等机制实现可靠性传输。

*UDP不提供复杂的控制机制,利用ip提供面向无连接的通信服务,出现网络拥堵的情况下,UDP也无法进行流量控制等避免网络拥塞的行为,出现丢包,UDP也不负责重发,包乱序时也不负责纠正

——————————3.TCP三次握手的特点————————————

  *没有应用层的数据

   *SYN这个标志位只有在TCP建产连接时才会被置1

   *握手完成后SYN标志位被置0

——————————4.TCP如何保证连接的可靠性——————————

TCP保证传输可靠的方法有:校验和,序列号,确认应答,超时重传,连接管理,流量控制,拥塞控制

1.校验和:判断传输数据是否出现了修改

TCP在计算校验和的时候,会添加一个12字节(12x8=96)的伪部首(32位源IP地址,32位目的IP地址,8位保留字节置0,8位传输协议号,《TCP是6,UDP是17》,16位TCP 长度 )通过 伪部首的目的IP来检查TCP是否收错了,通过传输协议号判读

//TODO校验和的计算之后再看

(接收方比对校验和一致不一定传输成功)

2.确认应答与序列号

TCP传输时将每一个字节的数据都编了号,这就是序列号

确认应答:传输数据时接收方收到数据后,会对传输方回应答,也就是ACK报文,ACK中带了确认应答的序列号

3.超时重传

由于网络原因:1.数据在发送过程中发生了丢包,接收端没有接收到。2.发送端回ACK报文出现丢包情况

TCP使用重传机制来解决问题,设置一个超时时间如果没有回应,重新传包,当重传达到一定次数后断开连接

4.连接管理

TCP的三次握手和四次挥手保证了可靠的连接

5.滑动窗口

流量控制和阻塞控制都是使用了滑动窗口实现

滑动窗口是指在发送缓冲区可发送的序列号范围,只有在滑动窗口内的数据才可以被发送,接收到ACK报文后,窗口会向前滑动,滑动窗口的大小记录在TCP首部中16位的窗口字段,窗口大小有接收方的接收窗口大小和拥塞窗口决定

6.流量控制

接收端接到数据后进行处理,如果发送端发送速度过快,接收端的缓存区占满后发送端发送的后续数据会出现丢包情况,TCP根据接收端的处理能力来决定发送端的发送速度这就是流量控制

7.拥塞控制

当网络的需求超过他的工作极限时就会出现拥塞,拥塞控制就是防止过多的数据注入网络中

解决方式1:慢开始,拥塞控制,2.快重传,快恢复

——————————5.TCP怎么流量控制——————————

tcp的流量控制是通过滑动窗口,

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 运输层协议概述 从通信和信息处理的角度看,运输层向它上面的应用层提供通信服务,它属于面向通信部分的最高层,同时也是...
    srtianxia阅读 7,501评论 0 2
  • 如果对网络工程基础不牢,建议通读《细说OSI七层协议模型及OSI参考模型中的数据封装过程?》 下面就是TCP/IP...
    zhoulujun阅读 8,607评论 1 10
  • 个人认为,Goodboy1881先生的TCP /IP 协议详解学习博客系列博客是一部非常精彩的学习笔记,这虽然只是...
    贰零壹柒_fc10阅读 10,502评论 0 8
  • 传输层-TCP, TCP头部结构 ,TCP序列号和确认号详解 TCP主要解决下面的三个问题 1.数据的可靠传输...
    抓兔子的猫阅读 10,000评论 1 46
  • 注:本文的图片均来源于谢希仁《计算机网络》第六版的课件PPT 1.重点内容 (1)运输层为相互通信的应用进程提供逻...
    zuyuxia阅读 4,832评论 0 1

友情链接更多精彩内容