当前位置: 首页 > news >正文

5.82 BCC工具之tcpdrop.py解读

一,工具简介

tcpdrop工具打印被内核丢弃的 TCP 数据包或段的详细信息,包括导致丢弃的内核堆栈跟踪。

当网络出现拥堵、资源不足或其他原因导致数据包被内核丢弃时,tcpdrop可以帮助开发者和网络管理员识别并定位问题。

该工具通过钩住内核中处理TCP数据包的相关函数,捕获丢弃事件并收集相关信息,如丢弃的TCP数据包的源IP、目的IP、端口号等。此外,它还可以提供内核堆栈跟踪,显示导致丢弃事件的内核函数调用链。

二,代码示例

#!/usr/bin/env pythonfrom __future__ import print_function
from bcc import BPF
import argparse
import os
from time import strftime
from socket import inet_ntop, AF_INET, AF_INET6
from struct import pack
from time import sleep
from bcc import tcp# 参数
examples = """examples:./tcpdrop           # trace kernel TCP drops./tcpdrop -4        # trace IPv4 family only./tcpdrop -6        # trace IPv6 family only
"""
parser = argparse.ArgumentParser(description="Trace TCP drops by the kernel",formatter_class=argparse.RawDescriptionHelpFormatter,epilog=examples)
gro
http://www.lryc.cn/news/319184.html

相关文章:

  • JavaScript 基础知识
  • 【判断是否为回文数】
  • 【C++】string进一步介绍
  • 思科设备下面主机访问公网经常时好时坏延迟大丢包不稳定
  • nuxtjs 如何通过ecosystem.config.js配置pm2?
  • 个人博客系列-后端项目-用户注册功能(7)
  • vue项目因内存溢出启动报错
  • UI 学习 二 可访问性 模式
  • Spring学习
  • 鸿蒙开发-UI-动画-组件内转场动画
  • Leet code 179 最大数
  • swagger踩坑之请求类不显示具体字段
  • 案例分析篇14:信息系统安全设计考点(2024年软考高级系统架构设计师冲刺知识点总结系列文章)
  • 前端之用HTML弄一个古诗词
  • Linux 安装使用 Docker
  • Doris部署学习(一)
  • QT下跨平台库实现及移植经验分享
  • 8:00面试,8:06就出来了,问的问题有点变态。。。
  • Rust 利用 Trait 实现多态性
  • Java毕业设计-基于springboot开发的“智慧食堂”设计与实现-毕业论文+答辩PPT(附源代码+演示视频)
  • 一瓶5.86万,听花酒什么来头?
  • 代码随想录 二叉树—填充每个节点的下一个右侧结点指针
  • 用 bsdtar 做 Linux 全系统迁移 - 最省空间、最灵活的Linux系统迁移方式,但需要那么一点点技巧
  • 【模拟string函数的实现】
  • 智能合约开发基础知识:最小信任机制、智能合约、EVM
  • 程序人生——Java泛型和反射的使用建议
  • JavaSE-----认识异常【详解】
  • 【机器学习300问】34、决策树对于数值型特征如果确定阈值?
  • 计算机二级(Python)真题讲解每日一题:《绘制雪花》
  • Rust 的 Arc<Mutex<T>> 的用法示例源代码