不管是 C/S 开发仍是 B/S 开发,不管是前端开发仍是后台开发,网络老是没法避免的,数据如何传输,如何保证正确性和可靠性,如何提升传输效率,如何解决会话管理问题,如何在网络拥堵环境下采起措施。这些都是须要了解的。css
今天总结下与网络相关的知识,不是那么详细,可是包含了我认为重要的全部点。若是想深刻了解的能够参考《图解HTTP[上野 宣]》、《图解TCP/IP(第5版)[竹下隆史]》以及计算机网络相关教材。html
网络知识我作了 8 个方面的总结,包括DNS协议,HTTP协议,HTTPS协议,TCP协议,IP协议,TCP/IP,Web攻击,其余协议。如下对这些内容作一些简单的总结,同时我也有完整的思惟导图,博客上不方便展现,如有须要,联系我。前端
做用:提供域名到IP地址之间的解析服务。或逆向从IP地址反查域名的服务web
HTTP方法算法
请求报文跨域
报文首部浏览器
响应报文缓存
报文首部安全
发送多种数据的多部分对象集合服务器
内容协商
2XX:请求正常处理完毕
3XX:须要进行附加操做以完成请求
4XX:服务器没法处理请求
5XX:服务器处理请求出错
缓存
长链接
而HTTP/1.1容许在一个TCP链接上能够传送多个HTTP请求和响应。HTTP/1.1协议的持续链接有两种方式,即非流水线方式和流水线方式。
存取方式的不一样
隐私策略的不一样
有效期上的不一样
服务器压力的不一样
浏览器支持的不一样
跨域支持上的不一样
过程描述
同网段
不一样网段
路由器包含了交换机的功能,交换机主要的做用是扩展接口
基于表单认证
特色
HTTP链接创建后,须要完成一次握手动做
通讯使用明文可能会被窃听
解决方式
不验证通讯方身份就可能遭遇假装
没法证实报文完整性,可能已遭篡改
慢
握手某个阶段中断,TCP会以相同的顺序发送相同的数据包
拥塞窗口
拥塞策略
拥塞控制流程
应用层
传输层
网络层
数据链路层