Http网络通讯

作者: buchuqi2677 | 来源:发表于2017-12-03 16:35 被阅读0次

计算机网络知识

1.HTTP相关知识,包括一个Http请求的内部结构,Http各个版本的不同,Http的特性等等。
2.TCP相关知识,包括三次握手、四次挥手、窗口滑动、拥塞控制等等
3.IP相关知识
4.5层和7层网络架构知识,这里只需要了解框架就行,各个层的具体协议除了上面说的其他都不需要特别了解。

OSI网络七层模型
QQ图片20171205091912.png 0_1325744597WM32.gif

客户机发起一次请求的时候:客户机会将请求封装成http数据包-->封装成Tcp数据包-->封装成Ip数据包--->封装成数据帧--->硬件将帧数据转换成bit流(二进制数据)-->最后通过物理硬件(网卡芯片)发送到指定地点。
服务器硬件首先收到bit流....... 然后转换成ip数据包。于是通过ip协议解析Ip数据包,然后又发现里面是tcp数据包,就通过tcp协议解析Tcp数据包,接着发现是http数据包通过http协议再解析http数据包得到数据。

Android 网络通讯框架机制

OkHttp
  • 架构原理、机制

想想假入之前没有用okhttp框架,自己写网络请求时的场景,启动一个异步线程,发起请求,处理请求,异步线程结束,假如考虑到网络不好、多个同时多次发起网络请求的情况下呢?性能还有保障嘛?
通过引入Chain 对拦截器(Interceptor)处理,封装Request、Response对象,在通过引入线程池(Dispatcher控制)、缓存(DiskLruCache)、重连机制(RouteSelector)来提高网络请求性能

  • okhttp的优点
    • 支持HTTP2/SPDY黑科技
    • socket自动选择最好路线,并支持自动重连
    • 拥有自动维护的socket连接池,减少握手次数
    • 拥有队列线程池,轻松写并发
    • 拥有Interceptors轻松处理请求与响应(比如透明GZIP压缩,LOGGING)
    • 基于Headers的缓存策略
对Request、Response的封装Chain
Builder参数的引入对于缓存、请求的优化
Retrofit

动态代理形式模式来使用,底层还是用的okhttp

相关文章

  • Http网络通讯

    计算机网络知识 1.HTTP相关知识,包括一个Http请求的内部结构,Http各个版本的不同,Http的特性等等。...

  • HTTP学习笔记

    HTTP HTTP是一个应用层协议建立在TCP/IP(传输层)协议之上,HTTP不关心网络通讯的具体细节。网络协议...

  • web Socket 总结

    序:客户端和服务端网络通讯的方式为HTTP、WS:HTTP 由客户端发起请求,服务端进行回应;WS 由客户端和服务...

  • 常见招聘要求

    三年以上Java开发经验,计算机科学基础扎实,了解常用的数据结构、算法和网络通讯协议(TCP/IP, HTTP/T...

  • Mac 开发之网络通讯

    本文包含:Mac开发中网络通讯常见问题、Mac端 网络通讯demo。 错误一:输出台:App Transport ...

  • 网络通讯

    UDP UDP多播 多播(组播)的概念多播,也称为“组播”,将网络中同一业务类型主机进行了逻辑上的分组,进行数据收...

  • 网络通讯

    自从开始网络教学以来,我对网络通讯的理解也在悄无声息的发生着巨大的变化。刚刚开始上网课的时候,还是认为着网络通讯的...

  • Retrofit(二)--流程图

    移步Retrofit--网络通讯框架

  • 关于IPv6被拒的问题解决

    使用网络通讯框架; 避免使用 IPv4 专用的 API; 避免使用硬编码地址。 1> 使用网络通讯框架;也就是是说...

  • TCP/IP协议及与OSI参考模型和五层协议的比较

    概念 (Transmission Control Protocol/Internet Protocol,网络通讯协...

网友评论

    本文标题:Http网络通讯

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