1. 什么是网络协议? 为什么要对协议分层2. 你了解OSI七层模型 3. TCP/IP四层模型说说看 4. 什么是端口,端口有什么作用 5. TCP 与 UDP区别 6. 什么时候用TCP? 什么时候用UDP? 7. 建立连接-TCP三次握手 8. 为什么要三次握手? 9. 第2次握手传回了ACK,为什么还要传回SYN? 10. 什么是半连接队列 11. 三次握手过程中可以携带数据吗 12. 断开连接-TCP四次挥手 13. 为什么要四次挥手 14. 为什么不能把服务器发送的 ACK 和 FIN 合并起来,变成三次挥手? 15. 如果第二次挥手时服务器的 ACK 没有送达客户端,会怎样? 16. 为什么第四次挥手客户端需要等待 2*MSL(报文段最长寿命)时间后才进入 CLOSED 状态? 17. TCP如何保证数据传输可靠性 18. 粘包或者拆包?以及如何解决? 19. TCP首部有哪些标志位? TCP首部报文格式 20. 如果已经建立了连接,但是客户端突然出现故障了怎么办? 21. 知道ip和port就可以生成tcp连接吗? 22. TCP的Socket编程 23. 什么是 SYN洪泛攻击?如何防范? 24. DNS工作流程 25. 从输入URL 到页面展示到底发生了什么? 26. Http状态码 27. Http与Https的区别 28. Http1.0与Http1.1区别 29. HTTP 是不保存状态的协议, 如何保存用户状态? 30. URL和URI的区别 31. Session, cookie, token, jwt 32. 对称加密和非对称加密 33. https加密过程 34. Http报文结构, 头部有哪些信息? 35. HTTP从1到2到3都有哪些改进? 36. GET和POST对比 37. Http常见方法 38. Http缓存技术 39. 什么是MAC地址? 40. 了解ARP协议吗 41. ping的工作原理 42. 断网了,还能 ping 通 127.0.0.1 吗? 43. 路由器和交换机的区别 44. 正向代理和反向代理 答案整理到下方专栏中 c++/嵌入式面经专栏-牛客网 https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM