网络学习

目录
  • 技术博客
  • 框图
  • 网络协议栈
    • 应用层
    • 传输层
    • 网络层
    • 数据链路层
  • 专题
    • 监控
    • SKB
    • 发送和接收全过程
    • EPOLL
    • 丢包问题
    • Keepalive
    • 全连接和半连接
    • localhost
    • NAT
    • DPDK
    • TC
    • XDP
    • Cilium
    • 虚拟网络
      • SDN
      • OVS
    • 智能网卡
    • 防火墙
      • iptables
      • tc 流量控制
    • 抓包
    • OFFLOAD
      • GSO/TSO
    • NFS
      • NFS协议
    • 分布式文件系统化
  • 常用命令和工具
    • tcpdump
    • ethtool
    • 网络模拟器
      • ensp
    • 协议分析软件
    • 视频课程

技术博客

  • https://blog.csdn.net/dog250
  • Linux操作系统学习笔记(二十二)网络通信之发包
  • Linux操作系统学习笔记(二十三)网络通信之收包
  • 理解 Linux 网络栈(1):Linux 网络协议栈简单总结
  • Linux内核网络中数据报在协议层的处理
  • LINUX网络子系统中DMA机制的实现
  • Linux内核网络(一)——初探内核网络
  • https://jvns.ca/
  • RFC协议规范下载
  • Intel以太网卡驱动,其中的Readme可以读一读
  • Linux 网络栈监控和调优:发送数据
  • ArthurChiao's Blog
  • 学习网络技术的方法和路径
  • 专栏 Linux Socket的内核源码分析
  • 专栏 Linux内核网络协议栈中,TCP协议的原理、实现,以及优化
  • Monitoring Linux Network Stack

框图

  • 网络发送框图
  • 网络接收框图

网络协议栈

应用层

  • Linux操作系统学习笔记(十九)网络通信之套接字
  • sock、socket和tcp_sock之间的关系
  • Linux内核网络(四)——socket编程实例及数据包捕获工具wireshark的使用

传输层

  • Linux操作系统学习笔记(二十一)网络通信之三次握手
  • Linux内核网络数据包发送(二)——UDP协议层分析
  • TCP超时重传定时器
  • 能将三次握手理解到这个深度,面试官拍案叫绝!
  • 拥塞控制
    • Experimenting with TCP Congestion control
    • TCP Congestion Control: A Systems Approach
      • https://github.com/SystemsApproach/tcpcc

网络层

  • Linux内核网络数据包发送(三)——IP协议层分析
  • How NAT traversal works
  • NAT 穿透是如何工作的:技术原理及企业级实践

数据链路层

  • Linux网络设备子系统
  • Linux内核网络数据发送(五)——排队规则
  • Linux内核网络数据包发送(四)——Linux netdevice 子系统
  • Linux内核网络设备驱动
  • Linux内核报文收发-网卡部分

专题

监控

  • Monitoring Linux Network Stack

SKB

  • linux skb 结构和相关操作函数分析
  • sk buff封装和解封装网络数据包的过程详解

发送和接收全过程

  • 图解Linux网络包接收过程
  • 拆解 Linux 网络包发送过程

EPOLL

  • 图解 | 深入揭秘 epoll 是如何实现 IO 多路复用的!

丢包问题

  • Linux内核网络丢包监控
  • 云网络丢包故障定位全景指南

Keepalive

  • TCP Keepalive HOWTO
  • 关于TCP连接的Keepalive和reset
  • TCP KEEP-ALIVE和TCP_USER_TIMEOUT机制
  • TCP KeepAlive机制理解与实践小结
  • TCP的定时器系列 — 保活定时器

全连接和半连接

  • TCP 三次握手原理,你真的理解吗?
  • 深入解析常见三次握手异常
  • 如何正确查看线上半/全连接队列溢出情况?

localhost

  • 127.0.0.1 之本机网络通信过程知多少 ?!

NAT

  • 连接跟踪(conntrack):原理、应用及 Linux 内核实现
  • NAT 穿透是如何工作的:技术原理及企业级实践

DPDK

TC

  • Linux 高级路由与流量控制手册
  • 深入理解 tc ebpf 的 direct-action (da) 模式
  • Traffic Mirroring: Theory and Practice

XDP

  • 支持XDP的linux网卡驱动
  • BPF 和 XDP 参考指南
  • Firewalling with BPF/XDP: Examples and Deep Dive

Cilium

  • 深入理解 Cilium 的 eBPF 收发包路径

虚拟网络

  • 轻松理解 Docker 网络虚拟化基础之 veth 设备!
  • 聊聊 Linux 上软件实现的“交换机” - Bridge!
  • 动手实验+源码分析,彻底弄懂 Linux 网络命名空间
  • 手工模拟实现 Docker 容器网络

SDN

  • SDNLAB
  • 如何去研究SDN&OpenFlow?
  • SDN前世今生
  • SDN在云数据中心的应用体验课
  • 深度解析OpenFlow
  • Mininet入门与应用实战

OVS

  • OVS Deep Dive 0: Overview
  • OVS Deep Dive 1: vswitchd
  • OVS Deep Dive 2: OVSDB
  • OVS Deep Dive 3: Datapath
  • OVS Deep Dive 4: OVS netdev and Patch Port
  • OVS Deep Dive 5: Datapath and TX Offloading
  • OVS Deep Dive 6: Internal Port

智能网卡

  • 智能网卡,引领网卡的逆袭与革命

防火墙

iptables

  • iptables详解
  • 来,今天飞哥带你理解 iptables 原理!
  • Linux iptables命令详解
  • 如何创建iptables_target
  • Linux NAT 应用进阶(多链路输出+原路返回)
  • 一个奇葩的网络问题,把技术砖家

tc 流量控制

  • 给网络注入点延迟

抓包

  • 用户态 tcpdump 如何实现抓到内核网络包的?
  • tcpdump/wireshark 抓包及分析
  • 控制tcpdump生成的包文件的大小和数量

OFFLOAD

GSO/TSO

  • 理解 Linux 网络栈(2):非虚拟化Linux 环境中的 Segmentation Offloading 技术
  • 内核网络中的GRO、RFS、RPS技术介绍和调优
  • 网络中断 rps & xps 调优记录

NFS

  • NFS协议的解析
  • NFS原理详解
  • client mount协商处理流程
  • https://www.cnblogs.com/f-ck-need-u/p/7048359.html#mytranslations
  • https://linux.die.net/man/8/rpc.nfsd
  • 和满哥抓包学NFSv3 (RFC1813)
  • Linux网络文件系统的实现与调试

NFS协议

  • https://tools.ietf.org/html/rfc7862 v4.2 nfs
  • https://tools.ietf.org/html/rfc5661 v4.1 nfs
  • https://tools.ietf.org/html/rfc7530 v4.0 nfs
  • https://tools.ietf.org/html/rfc3530 v4.0 nfs
  • https://tools.ietf.org/html/rfc1813 v3.0 nfs
  • https://tools.ietf.org/html/rfc1094 v2.0 nfs

分布式文件系统化

  • 分布式存储glusterfs详解
  • GlusterFS分布式存储
  • glusterfs专栏
  • gluster官方网站
  • github

常用命令和工具

  • Linux网络常用工具分类介绍

  • 查看网卡对应的PCI设备

ls -l /sys/class/net
  • 查看虚拟网络设备
ls /sys/devices/virtual/net/

tcpdump

  • tcpdump - 数据包进行截获的包分析工具
  • Tcpdump抓包命令
  • tcpdump: An Incomplete Guide

ethtool

  • ethtool(8) — Linux manual page
  • 源码仓库:https://git.kernel.org/pub/scm/network/ethtool/ethtool.git
  • ethtool 源码解析、内核与用户空间全面解读
  • ethtool 网卡诊断、调整工具、网卡性能优化| 解决丢包严重
  • Linux命令之ethtool命令

网络模拟器

ensp

  • 手把手教你玩华为eNSP模拟器
  • 华为模拟器eNSP下载与安装教程
  • 【eNSP】入门介绍

协议分析软件

  • 科来网络分析系统
    • 学习资料

视频课程

  • 韩老师全新《计算机网络原理》
    • 计算机网络原理笔记精整理
  • 华为数通路由交换HCNA/HCIA
  • 华为数通路由交换HCIP/HCNP
  • 华为认证HCIA+HCIP+HCIE,100集全套课程!带你从零基础直奔高阶!

你可能感兴趣的:(网络,学习)