|
| 1 | +<!-- TOC --> |
| 2 | + |
| 3 | +- [前言](#前言) |
| 4 | +- [第一部分:传输层](#第一部分传输层) |
| 5 | + - [1. 说一下OSI七层模型 TCP/IP四层模型 五层协议](#1-说一下osi七层模型--tcpip四层模型--五层协议) |
| 6 | + - [(1)五层协议](#1五层协议) |
| 7 | + - [(2)ISO七层模型中表示层和会话层功能是什么?](#2iso七层模型中表示层和会话层功能是什么) |
| 8 | + - [(3)数据在各层之间的传递过程](#3数据在各层之间的传递过程) |
| 9 | + - [(4)TCP/IP四层模型](#4tcpip四层模型) |
| 10 | + - [2. TCP报头格式和UDP报头格式](#2-tcp报头格式和udp报头格式) |
| 11 | + - [(1)UDP 和 TCP 的特点](#1udp-和-tcp-的特点) |
| 12 | + - [(2)UDP 首部格式](#2udp-首部格式) |
| 13 | + - [(3)TCP 首部格式](#3tcp-首部格式) |
| 14 | + - [3. TCP三次握手?那四次挥手呢?如何保障可靠传输](#3-tcp三次握手那四次挥手呢如何保障可靠传输) |
| 15 | + - [(1)三次握手](#1三次握手) |
| 16 | + - [(2)为什么TCP连接需要三次握手,两次不可以吗,为什么](#2为什么tcp连接需要三次握手两次不可以吗为什么) |
| 17 | + - [(3)四次挥手](#3四次挥手) |
| 18 | + - [(4)四次挥手的原因](#4四次挥手的原因) |
| 19 | + - [(5)TIME_WAIT](#5time_wait) |
| 20 | + - [(6)如何保证可靠传输](#6如何保证可靠传输) |
| 21 | + - [(7)TCP连接状态?](#7tcp连接状态) |
| 22 | + - [(8)TCP和HTTP](#8tcp和http) |
| 23 | + - [4. TCP连接中如果断电怎么办](#4-tcp连接中如果断电怎么办) |
| 24 | + - [5. TCP和UDP区别?如何改进TCP](#5-tcp和udp区别如何改进tcp) |
| 25 | + - [6. TCP滑动窗口](#6-tcp滑动窗口) |
| 26 | + - [7. TCP流量控制](#7-tcp流量控制) |
| 27 | + - [8. TCP拥塞处理(Congestion Handling)](#8-tcp拥塞处理congestion-handling) |
| 28 | + - [(1)慢开始与拥塞避免](#1慢开始与拥塞避免) |
| 29 | + - [(2)快重传与快恢复](#2快重传与快恢复) |
| 30 | + - [(3)发送窗口的上限值](#3发送窗口的上限值) |
| 31 | + - [9. 如何区分流量控制和拥塞控制](#9-如何区分流量控制和拥塞控制) |
| 32 | + - [10. 解释RTO,RTT和超时重传](#10-解释rtortt和超时重传) |
| 33 | + - [11. 停止等待和超时重传](#11-停止等待和超时重传) |
| 34 | + - [12. 从输入网址到获得页面的网络请求过程](#12-从输入网址到获得页面的网络请求过程) |
| 35 | +- [第二部分:应用层(HTTP)](#第二部分应用层http) |
| 36 | + - [1. URL、URI、URN区别](#1-urluriurn区别) |
| 37 | + - [2. HTTP的请求和响应报文](#2-http的请求和响应报文) |
| 38 | + - [(1)请求报文](#1请求报文) |
| 39 | + - [(2)响应报文](#2响应报文) |
| 40 | + - [3. HTTP状态](#3-http状态) |
| 41 | + - [(1)1XX 信息](#11xx-信息) |
| 42 | + - [(2)2XX 成功](#22xx-成功) |
| 43 | + - [(3)3XX 重定向](#33xx-重定向) |
| 44 | + - [(4)4XX 客户端错误](#44xx-客户端错误) |
| 45 | + - [(5)5XX 服务器错误](#55xx-服务器错误) |
| 46 | + - [4. HTTP方法](#4-http方法) |
| 47 | + - [(1)GET](#1get) |
| 48 | + - [(2)HEAD](#2head) |
| 49 | + - [(3)POST](#3post) |
| 50 | + - [(4)PUT](#4put) |
| 51 | + - [(5)PATCH](#5patch) |
| 52 | + - [(6)DELETE](#6delete) |
| 53 | + - [(7)OPTIONS](#7options) |
| 54 | + - [(8)CONNECT](#8connect) |
| 55 | + - [(9)TRACE](#9trace) |
| 56 | + - [5. GET和POST的区别?【阿里面经OneNote】](#5-get和post的区别阿里面经onenote) |
| 57 | + - [6. 如何理解HTTP协议是无状态的](#6-如何理解http协议是无状态的) |
| 58 | + - [7. 什么是短连接和长连接](#7-什么是短连接和长连接) |
| 59 | + - [★ 微信二维码登录如何实现](#★-微信二维码登录如何实现) |
| 60 | + - [8. Cookie](#8-cookie) |
| 61 | + - [(1)用途](#1用途) |
| 62 | + - [(2)创建过程](#2创建过程) |
| 63 | + - [(3)分类](#3分类) |
| 64 | + - [(4)JavaScript 获取 Cookie](#4javascript-获取-cookie) |
| 65 | + - [(5)Secure 和 HttpOnly](#5secure-和-httponly) |
| 66 | + - [(6)作用域](#6作用域) |
| 67 | + - [9. Session](#9-session) |
| 68 | + - [10. 浏览器禁用 Cookie](#10-浏览器禁用-cookie) |
| 69 | + - [11. Cookie 与 Session 选择](#11-cookie-与-session-选择) |
| 70 | + - [12. HTTPs安全性](#12-https安全性) |
| 71 | + - [(1)对称密钥加密](#1对称密钥加密) |
| 72 | + - [(2)非对称密钥加密](#2非对称密钥加密) |
| 73 | + - [(3)HTTPs 采用的加密方式](#3https-采用的加密方式) |
| 74 | + - [13. SSL/TLS协议的握手过程](#13-ssltls协议的握手过程) |
| 75 | + - [SSL (Secure Socket Layer,安全套接字层)](#ssl-secure-socket-layer安全套接字层) |
| 76 | + - [TLS (Transport Layer Security,传输层安全协议)](#tls-transport-layer-security传输层安全协议) |
| 77 | + - [(1)client hello](#1client-hello) |
| 78 | + - [(2)server hello](#2server-hello) |
| 79 | + - [(3)server certificate](#3server-certificate) |
| 80 | + - [(4)Server Hello Done](#4server-hello-done) |
| 81 | + - [(5)Client Key Exchange](#5client-key-exchange) |
| 82 | + - [(6)Change Cipher Spec(Client)](#6change-cipher-specclient) |
| 83 | + - [(7)Finished(Client)](#7finishedclient) |
| 84 | + - [(8)Change Cipher Spec(Server)](#8change-cipher-specserver) |
| 85 | + - [(9)Finished(Server)](#9finishedserver) |
| 86 | + - [(10-11)Application Data](#10-11application-data) |
| 87 | + - [(12)Alert:warning, close notify](#12alertwarning-close-notify) |
| 88 | + - [(*)demand client certificate](#demand-client-certificate) |
| 89 | + - [(*)check server certificate](#check-server-certificate) |
| 90 | + - [14. 数字签名、数字证书、SSL、https是什么关系?](#14-数字签名数字证书sslhttps是什么关系) |
| 91 | + - [密码](#密码) |
| 92 | + - [密钥](#密钥) |
| 93 | + - [对称加密](#对称加密) |
| 94 | + - [公钥加密(非对称加密)](#公钥加密非对称加密) |
| 95 | + - [消息摘要](#消息摘要) |
| 96 | + - [消息认证码](#消息认证码) |
| 97 | + - [数字签名](#数字签名) |
| 98 | + - [公钥证书](#公钥证书) |
| 99 | + - [15. HTTP和HTTPS的区别【阿里面经OneNote】](#15-http和https的区别阿里面经onenote) |
| 100 | + - [16. HTTP2.0特性](#16-http20特性) |
| 101 | + - [(1)二进制分帧](#1二进制分帧) |
| 102 | + - [(2)多路复用](#2多路复用) |
| 103 | + - [(3)服务器推送](#3服务器推送) |
| 104 | + - [(4)头部压缩](#4头部压缩) |
| 105 | +- [第三部分:网络层](#第三部分网络层) |
| 106 | + - [1. mac和ip怎么转换](#1-mac和ip怎么转换) |
| 107 | + - [2. IP地址子网划分](#2-ip地址子网划分) |
| 108 | + - [3. 地址解析协议ARP](#3-地址解析协议arp) |
| 109 | + - [4. 交换机和路由器的区别](#4-交换机和路由器的区别) |
| 110 | + - [5. 子网掩码的作用](#5-子网掩码的作用) |
| 111 | +- [第四部分:网络安全](#第四部分网络安全) |
| 112 | + - [1. 怎么知道连接是恶意的呢?可能是正常连接?](#1-怎么知道连接是恶意的呢可能是正常连接) |
| 113 | + - [2. 跨站脚本攻击XSS](#2-跨站脚本攻击xss) |
| 114 | + - [XSS攻击是什么](#xss攻击是什么) |
| 115 | + - [XSS的危害](#xss的危害) |
| 116 | + - [攻击分类举例](#攻击分类举例) |
| 117 | + - [(1)反射型XSS](#1反射型xss) |
| 118 | + - [(2)持久型XSS](#2持久型xss) |
| 119 | + - [(3)DOM-based XSS](#3dom-based-xss) |
| 120 | + - [防范](#防范) |
| 121 | + - [使用XSS Filter](#使用xss-filter) |
| 122 | + - [使用 HttpOnly Cookie](#使用-httponly-cookie) |
| 123 | + - [困难和幸运](#困难和幸运) |
| 124 | + - [3. 跨站请求伪造CSRF](#3-跨站请求伪造csrf) |
| 125 | + - [CSRF是什么?](#csrf是什么) |
| 126 | + - [CSRF原理](#csrf原理) |
| 127 | + - [如何预防CSRF](#如何预防csrf) |
| 128 | + - [如何用简洁生动的语言说明 XSS 和 CSRF 的区别?](#如何用简洁生动的语言说明-xss-和-csrf-的区别) |
| 129 | + - [4. SQL注入攻击](#4-sql注入攻击) |
| 130 | + - [什么是SQL注入?](#什么是sql注入) |
| 131 | + - [如何防止SQL注入?](#如何防止sql注入) |
| 132 | + - [总结](#总结) |
| 133 | + - [5. 拒绝服务攻击**DDoS**](#5-拒绝服务攻击ddos) |
| 134 | + - [SYN Flood](#syn-flood) |
| 135 | + - [CC 攻击](#cc-攻击) |
| 136 | + - [NTP Flood](#ntp-flood) |
| 137 | + - [预防](#预防) |
| 138 | + - [DOS攻击之泪滴攻击](#dos攻击之泪滴攻击) |
| 139 | +- [附录:参考资料](#附录参考资料) |
| 140 | + |
| 141 | +<!-- /TOC --> |
1 | 142 | # 前言 |
2 | 143 |
|
3 | 144 | 本文将总结后台开发中的核心网络知识。主要围绕网络层、传输层、应用层,核心为 TCP 和 HTTP 两部分。 |
|
0 commit comments