Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

第9章:网络技术基础

学习目标

通过本章学习,你将能够:

  • 理解网络分层模型和各层的核心作用
  • 掌握TCP/IP协议族的核心协议原理(IP、TCP、UDP、HTTP等)
  • 理解网络数据包的传输过程和常见网络设备的作用
  • 掌握网络编程的基本原理和常见模型
  • 了解网络安全基础和常见的网络攻击防护方法
  • 能够排查常见的网络问题

章节简介

网络技术是现代程序员必备的基础知识,无论是前端、后端还是客户端开发,都离不开网络。理解网络原理,能够帮助你写出更高效、更安全的网络应用,快速排查网络相关的问题。本章将从网络分层模型讲起,系统讲解链路层、网络层、传输层、应用层各层的核心协议原理,网络编程基础,以及网络安全相关的知识,帮助你建立完整的网络知识体系。

本章内容

9.1 网络分层模型

  • OSI七层模型和TCP/IP四层模型
  • 各层的核心功能和作用
  • 网络数据包的封装和解封装过程
  • 常见的网络设备(交换机、路由器、网关等)的作用

9.2 链路层与网络层

  • 以太网协议和MAC地址
  • ARP地址解析协议
  • IP协议原理、IP地址分类、子网划分
  • ICMP协议与ping命令
  • 路由原理和路由表

9.3 传输层协议

  • UDP协议原理、特点和适用场景
  • TCP协议原理:三次握手、四次挥手、流量控制、拥塞控制
  • TCP/UDP对比和选型建议
  • 端口和套接字的概念

9.4 应用层协议

  • HTTP/HTTPS协议原理和常见字段
  • DNS域名系统原理
  • FTP、SSH、WebSocket等常见应用层协议
  • RESTful API设计和GraphQL简介

9.5 网络编程基础

  • Socket编程原理和常见接口
  • 常见网络IO模型:BIO、NIO、多路复用、AIO
  • RPC远程过程调用原理
  • 网络编程常见坑点和最佳实践

9.6 网络安全基础

  • 常见网络攻击方式:XSS、CSRF、SQL注入、DDoS等
  • 加密算法基础:对称加密、非对称加密、哈希算法
  • HTTPS和TLS/SSL协议原理
  • 防火墙、WAF等安全设备的作用
  • 网络安全最佳实践

学习建议

本章内容对所有开发者都非常重要,建议结合实际开发场景学习。如果你是后端开发者,重点掌握TCP/IP协议细节、网络编程模型、HTTPS原理;如果是前端开发者,重点掌握HTTP/HTTPS、WebSocket、Web安全相关内容;如果是运维或者网络相关开发者,可以深入学习路由、网络安全等内容。学习时可以结合Wireshark抓包工具,实际观察网络数据包的结构和传输过程,加深理解。


难度:★★★☆☆

预计学习时间:4小时