跳至主要內容

♥网络协议和工具知识体系详解♥

gavin-james开发理论网络协议大约 4 分钟

♥网络协议和工具知识体系详解♥

网络基础,尤其是网络协议(TCP/IP协议栈为主)在网络开发中极为重要,本系列带你梳理网络基础和协议相关的知识体系

如何学习

第一步:学习计算机网络基础;构筑任何基础体系之前,需要学习这个专题的整体知识点(最好是一本完整的书),这里主要基于《计算机网络(第五版)》知识点梳理,不得不说这本书作者谢希仁画的PPT还是挺棒的。网络基础分三部分内容,主要包含如下:

  • 网络基础之一 - 计算机网络基础部分梳理
    • 网络基础的第一篇,主要来源于大学的课程《计算机网络(第五版)》知识点梳理,内容整理自这里在新窗口打开open in new window, 但是作了调整和优化; 不得不说这本书作者谢希仁画的PPT还是挺棒的。
  • 网络基础之二 - 网络7层协议,4层,5层
    • 网络基础的第二篇,我觉的一定要有全局框架观,构建全局观时建议分三步:第一步,理解全局的网络层次;第二步,理解每一层次中的常见的网络设备及功能;第三步,理解每一层中的常见协议。在此基础上,将其它知识点放置在相应的层次(很多网络上的零散知识点是没法帮你构筑完整的知识体系的,推荐你完整的看一本关于网络的书籍来构筑基础)
  • 网络基础之三 - IP 协议相关详解
    • 网络基础第三篇,主要阐述: IP协议(在网络层)及其配套协议(在数据链路层的ARP协议,在网络层的ICMP,IGMP协议,IPV6详解,网络地址转换 NAT等。

第二步:学习传输层协议TCP/UDP;TCP/UDP是后面应用层协议的基础。

第三步:学习应用层协议;HTTP 基于TCP协议实现,web开发必学;DNS 基于UDP协议实现。

  • 网络协议 - HTTP 协议详解
    • HTTP 协议详解,web开发必备
  • 网络协议 - DNS 相关详解
    • DNS的核心工作就是将域名翻译成计算机IP地址, 它是基于UDP协议实现的,本文将具体阐述DNS相关的概念,解析,调度原理(负载均衡和区域调度)等DNS相关的所有知识点

第四步:知识点贯穿理解

  • 知识点串联:输入URL 到页面加载过程详解
    • 第一,将前面涉及网络协议特别是TCP协议HTTP协议DNS解析等等知识点贯穿;
    • 第二,在此基础上介绍浏览器渲染过程,以及为Web优化提供基础。

第五步:相关工具等

  • 工具: netstat查看服务及监听端口详解
    • 在Linux使用过程中,需要了解当前系统开放了哪些端口,并且要查看开放这些端口的具体进程和用户,可以通过netstat命令进行简单查询。
  • 工具: 网络抓包神器 tcpdump 使用详解
    • tcpdump 是一款强大的网络抓包工具,它使用 libpcap 库来抓取网络数据包,这个库在几乎在所有的 Linux/Unix 中都有。熟悉 tcpdump 的使用能够帮助你分析调试网络数据,本文将通过一个个具体的示例来介绍它在不同场景下的使用方法。。
  • 工具: Wireshark介绍及抓包分析
    • Wireshark(前称Ethereal)是一个网络封包分析软件.网络管理员使用Wireshark来检测网络问题,网络安全工程师使用Wireshark来检查资讯安全相关问题,开发者使用Wireshark来为新的通讯协定除错,普通使用者使用Wireshark来学习网络协定的相关知识。