路由器taildrop丢包原因总结分析

网络处理器实战:POS与千兆以太网协议转换与三层交换 网络处理器是专为高性能数据包处理设计的专用芯片,其核心原理在于通过硬件加速单元与可编程微引擎的协同,实现线速转发。在网络设备开发中,这种软硬件协同设计能极大提升数据处理效率,其技术价值在于满足城域网汇聚、企业核心网边缘等场景对异构网络融合与高性能转发的需求。具体到协议转换应用,如连接POS链路与千兆以太网,需要实现三层IP路由、MPLS标签交换等复杂功能。本文通过剖析一个基于C-Port网络处理器的经典案例,详细拆解了数据包从物理层接收、经过表查找单元加速决策、到队列管理单元调度发送的全流程,并深入探讨了其 阅读详情
Taildrop在路由器上是一种非常常见的丢包策略。如果路由器进来数据包的总bps超过了路由器能处理的bps,那么,某些数据包就会被丢弃,而丢包原因就是taildrop。
这种情况下的丢包,和路由器过载无法处理(一般是pps达到了路由器处理的上限)是完全不一样的。路由器因为pps过大导致路由器过载而丢包,这样的包很可能都没有丢包原因的。

下面的这个例子,路由器dataplane的处理能力只是达到了79%,但是,总的bps已经达到了2G,该路由器的总throughput就只有2G,部分数据包就被丢弃,而丢包原因就是taildrop。


显而易见的一点就是,因为路由器要生产丢包原因以及统计这些丢包,路由器需要不少CPU来处理。


ISR4451-8#drop 
-------------------------------------------------------------------------
Global Drop Stats                         Packets                  Octets  
-------------------------------------------------------------------------
TailDrop                                494618626            104275024927  

ISR4451-8#qfp 
  CPP 0: Subdev 0            5 secs        1 min        5 min       60 min
Input:  Priority (pps)            0            0            0            0
                 (bps)            0            0            0            0
    Non-Priority (pps)      1467916      1468173      1468929       792050
                 (bps)   2528258536   2528711256   2530021480   1364186256
           Total (pps)      1467916      1468173      1468929       792050
                 (bps)   2528258536   2528711256   2530021480   1364186256
Output: Priority (pps)            0            0            0            0
                 (bps)            0            0            0            0
    Non-Priority (pps)      1182766      1182737      1182581       654046
                 (bps)   2000060344   2000039408   2000087840   1106106624
           Total (pps)      1182766      1182737      1182581       654046
                 (bps)   2000060344   2000039408   2000087840   1106106624
Processing: Load (pct)           79           79           79           47

ISR4451-8#inter

 *: interface is up
 IHQ: pkts in input hold queue     IQD: pkts dropped from input queue
 OHQ: pkts in output hold queue    OQD: pkts dropped from output queue
 RXBS: rx rate (bits/sec)          RXPS: rx rate (pkts/sec)
 TXBS: tx rate (bits/sec)          TXPS: tx rate (pkts/sec)
 TRTL: throttle count

  Interface                   IHQ       IQD       OHQ       OQD      RXBS      RXPS      TXBS      TXPS      TRTL
-----------------------------------------------------------------------------------------------------------------
* GigabitEthernet0/0/0          0         0         0 123213140 620748000    367209 499970000    295685         0
* GigabitEthernet0/0/1          0         0         0 123147405 620691000    367220 499888000    295678         0
* GigabitEthernet0/0/2          0         0         0 124104918 620149000    366856 499812000    295485         0
* GigabitEthernet0/0/3          0         0         0 124296565 619858000    366718 499900000    295619         0
  GigabitEthernet2/0/0          0         0         0         0         0         0         0         0         0
  GigabitEthernet2/0/1          0         0         0         0         0         0         0         0         0
  GigabitEthernet2/0/2          0         0         0         0         0         0         0         0         0
  GigabitEthernet2/0/3          0         0         0         0         0         0         0         0         0
  GigabitEthernet2/0/4          0         0         0         0         0         0         0         0         0
  GigabitEthernet2/0/5          0         0         0         0         0         0         0         0         0
* GigabitEthernet0              1         0         0         0         0         0         0         0         0
  Vlan1                         0         0         0         0         0         0         0         0         0
ISR4451-8#drop 
-------------------------------------------------------------------------
Global Drop Stats                         Packets                  Octets  
-------------------------------------------------------------------------
TailDrop                                496427297            104656585304  

ISR4451-8#


NXP Layerscape平台DPDK虚拟化部署与DPAA2性能优化实战 在构建高性能网络设备时,数据平面开发套件(DPDK)通过用户态轮询、大页内存等技术,将网络包处理性能提升至新高度。其核心原理在于绕过内核协议栈,直接访问硬件资源,从而大幅降低处理延迟、提升吞吐量。这一技术价值使其成为5G用户面功能(UPF)、智能网卡和边缘路由器等场景的关键基石。随着云原生和虚拟化技术的普及,将DPDK与虚拟机(QEMU/KVM)及Docker容器结合,成为实现资源隔离与灵活部署的必然趋势。本文聚焦于在NXP Layerscape处理器平台上,如何通过精细的CPU亲和性设置、DPAA2硬件资 阅读详情

相关推荐

drop_watch:监视linux丢弃UDP数据包的原因和位置

drop_watch:监视linux丢弃UDP数据包的原因和位置

丢弃技术基础知识

拥塞避免(丢弃技术) 1.taildrop 队列满了后来就丢弃 缺点:对于TCP流量TCP窗口震荡 2.RED 快满之前随便丢弃 解决taildrop窗口震荡的问题 缺点:可能会把重要的包丢弃 3.WRED 快满之前有选择丢弃 解决重要的包被丢的问题 配置 R1(config)#int s1/0 R1(config-if)#random-detect...

咸鱼的梦想专栏 1万+

C语言版数字锁相放大器实现指南:从复数运算到嵌入式MCU移植的坑我都帮你踩了

本文详细介绍了C语言实现数字锁相放大器的关键技术,包括复数运算优化、嵌入式MCU移植的实战经验及内存管理策略。针对STM32等资源受限平台,提供了从浮点到定点数转换的优化方案,帮助工程师高效处理微弱信号提取问题。

weixin_30721077的博客 432

QoS学习笔记

相关协议 1) 802.1Q Virtual Bridged Local Area Networks 2) MEF5 Traffic Management 3) MEF10.2 Ethernet Services Attributes 4) RFC2697 srTCM - Single Rate Three Color Marker 5) RFC2698  trTCM - Two Rat

NowOrNever 3万+

华为OD机试真题 - 矩阵匹配 牛客网

2024华为OD机试真题,代码包含语言java、js、python、c 代码基本都有详细注释。 题目描述 从一个 N * M(N ≤ M)的矩阵中选出 N 个数,任意两个数字不能在同一行或同一列,求选出来的 N 个数中第 K 大的数字的最小值是多少。 输入描述 输入矩阵要求:1 ≤ K ≤ N ≤ M ≤ 150 输入格式: N M K N*M矩阵 输出描述 N*M 的矩阵中可以选出 M! / N! 种组合数组,每个组合数组种第 K 大的数中的最小值。无需考虑重复数字,直接取字典排序结果即可。

2301_76543445的博客 498

Ubuntu20.04下 嵌入式 Qt 开发环境的搭建(适用于Tiny6410)

Ubuntu 下 Tiny6410 嵌入式 Qt 开发环境的搭建 目录导航Ubuntu 下 Tiny6410 嵌入式 Qt 开发环境的搭建前言1.安装前的准备工作2.安装交叉编译器 前言 这篇文章,主要是基于 Ubuntu19.10版本而写,写此文的初衷,是为了自己使用,因为最近正在以Tiny6410板子做实训,所以也是初学者一枚,只能保证我遇上的问题统统能够解决掉,至于一些没遇上的,欢迎各位看客给我留言,大家一起讨论,一起解决。 注:本文会持续更新 1.安装前的准备工作 环境要求 Linux系统:U

繁臻的小窝 4895

4.2.1 拥塞避免概述与尾丢弃(Tail-Drop)

拥塞避免是一种流控机制,它可以通过监视网络资源(如队列或内存缓冲区)的使用情况,在拥塞有加剧的趋势时,主动丢弃报文,通过调整网络的流量来解除网络过载。拥塞避免机制包括:尾丢弃、RED和WRED。

m0_70976024的博客 1476

绝缘检测原理和绝缘电阻计算方法

绝缘检测的目的就是计算绝缘电阻,当绝缘电阻低于某个阈值,则很可能会造成电池短路、漏电,威胁人员安全

m0_56208280的博客 4万+

NS2学习-学习DropTail 队列管理机制

      在Internet中最简单也最普遍的队列管理机制就是DropTail。当一个数据报到达队列时,就把数据报放到队列中等待被传送,但由于队列长度是有限的,因此如果数据流太大,而队列没有空间去暂存这些新到的数据报,就会把队列最尾端的数据报丢弃,这样的管理机制就叫做DropTail。很多时候,DropTail队列管理机制会与FIFO(First In First Out)相结合,整个运作方式为...

jiach3的博客 6323

Cesium创建无人机视锥,同步视锥与鹰眼地图视角,实现视锥键盘控制。解决视锥初始化位置不准确问题等

本文描述了一个基于Cesium的3D视锥体可视化系统开发过程。系统实现了主视图与鹰眼视图的双屏联动,支持通过键盘控制视锥体的空间移动(WASD前后左右,Q/E旋转,C/Z升降),并实时同步更新两个视图。关键技术包括:1)基于主视图Scene创建Camera实现视锥体精确绘制;2)通过PerspectiveFrustum设置视锥参数;3)建立双视图的相机位置及视角同步机制。目前暂未实现视锥体far/near边界在鹰眼视图中的可视化,该系统可应用于无人机视角监控等三维场景交互需求。

coder_bin的博客 1590

一文读懂5G网络整体架构(接入网+承载网+核心网)

接入网重构分级(分工更细、效率更高)、承载网三段化升级(管道更宽、更智能)、核心网服务化云化(管理更灵活、成本更低)最终实现“成本最优、资源灵活、场景适配”,才能支撑自动驾驶、工业互联网、智慧城市、VR/AR等各种新场景,真正走进我们的生活。

鲸落寰宇 429

交换原理-QOS TD与WRED

。。

wangyayayaya的专栏 3790

A*寻路算法的最简单通俗讲解

为什么我的眼里常含泪水?因为我有一个算法不会。为了节约点眼泪,今天我们就来介绍著名的A*寻路算法(或简称A*算法)。 Peter Hart, Nils Nilsson 和 Bertram Raphael 在1968年首次提出了著名的A*算法。A*算法其实是Dijkstra最短路径算法的一种扩展。不一样的是,在A*算法中我们需要使用Heuristics 来导引搜索过程,以期达到更好的表现。 ...

白马负金羁 2万+

QOS基本概念/技术原理理解

服务质量指标 带宽 时延 抖动 丢包率 服务模型 best-effort inserv diffserv 流分类 流标记 流量监控 流量整形 参考 技术白皮书 qos-知乎

legend050709的专栏 1万+

Hindsight 内存爆炸 4 个词排查清单:9,284 条 6 成是 SSH 调试日志——Agent 标签系统的实战复盘

9,284 条记忆里 66% 是 SSH 调试日志。4 个标签被滥用=0 区分度。3 个 entity_labels + retain_mission + retain_every_n_turns 配置把噪声压回 5%——附 PATCH 脚本和实测前后数据。

Starry-SkyJing的博客 57

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

揭秘数通知识:QoS是什么?QoS是怎么工作的?(一)

综合服务可以满足多种QoS需求。这个请求是通过信令来完成的,应用程序先通知网络自己的流量参数和需要的特定服务质量,包括带宽、时延等,应用程序一般在收到网络的确认信息,即确认网络已经为这个应用程序的报文预留了资源后,才开始发送报文,同时应用程序发出的报文被控制在流量参数描述的范围内。在传统的IP网络中,所有的报文都被无区别地等同对待,每个路由器对所有的报文均采用先进先出(FIFO)的策略进行处理,尽最大的努力(best-effort)将报文送到目的地,但对报文传送的可靠性、传送延迟等性能不提供任何保证。

redparrot2008的博客 1197

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

ZoneBasedFirewall对系统性能影响

ASR1002x-3#show pl hard qfp ac datapath utilization CPP 0: Subdev 0 5 secs 1 min 5 min 60 min Input: Priority (pps) 0 0 0

跳着Samba的狮子 1132

ns3队列管理方式的方法和区别

ns3队列管理方式的方法和区别 ns3队列管理: 1.FIFO(First In First Out) 调度策略,决定发包的顺序 tail-drop policy 决定队列长度 路由器的队列通常都是按照FIFO的规则处理到来的分组。由于队列长度有限,当队列已满时,以后再到达的所有分组(如果能够继续排队,这些分组都将排在队列尾部)将都被丢弃。这就是尾部丢弃策略(tail-drop policy) 2.pfifo-fast (p是以packet为单位) 特点是先进先出(FIFO),没有任何数据包被特殊对待,这个

wangyushuang0902的博客 1717

TCP流量控制和拥塞控制

文章目录一,流量控制1.什么是流量控制?2.实现滑动窗口机制死锁现象解决方法TCP报文段发送时机Nagle算法接收方糊涂窗口综合征二,拥塞控制1.什么是拥塞?2.什么是拥塞控制?3.检测网络拥塞的指标4.TCP拥塞控制算法控制拥塞窗口原则拥塞判断拥塞窗口控制算法1.慢开始2.拥塞避免算法3.快重传4.快恢复TCP拥塞控制流程图主动队列管理(AQM)1.什么是主动队列管理2.随机早期检测 RED 一...

kevin的博客 567

QOS区分模型学习

出处:http://blog.163.com/k_hunter/blog/static/295037242011313842354/ QOS定义: 从技术角度而言,Qos是网络中管理数据流的可用带宽、延迟、抖动以及分组丢弃的技术集合。 PHB(Per-Hop Behavior)是DS节点作用于数据流的行为。网络管理员可以配置DSCP到P

achejq的专栏 6671

尾部丢弃与RED

尾部丢弃与RED 一.尾部丢弃 队列满时路由器进行尾丢弃,即新到的所有数据包都全部丢弃,丢弃的结果造成高延迟、高抖动、丧失服务保证、TCP全局同步、TCP饿死等问题,从而导致应用超时、数据重传和实时业务不可用等一系列问题 TCP全局同步:没有差别的丢弃会造成所有TCP流的报文几乎在同一时刻丢弃,TCP又几乎在同一时刻重传。TCP窗口会在几乎同一时刻缩小,然后又几乎同一时刻增大,这将造成所有TCP连接的流量以相同的“频率”持续震荡。TCP全局同步的结果是TCP传输效率急剧下降,并且带宽的平均利用率大大降低。

wll1228的博客 3491

samba协议

Samba是一个功能强大的文件服务器,可以在Windows和Linux之间提供通信桥梁。本文介绍了Samba服务的概述、安装方法、使用方法和配置文件的修改方法。通过合理配置Samba服务,可以实现文件共享和访问控制,满足不同的需求。

爱意随风起,人生不可弃。 3444

CNA—Cisco Network Assistant (VTP,VLAN,ETHERNET-CHANNEL)

在思科为中小型企业(SMBs)生产的产品线中,它为大家提供了一个免费的工具Cisco Network Assistant (CNA)来帮助大家配置思科的设备。当然,你可能会认为,这个目标直指中小型企业的工具对你来说并不一定适用,但是,要记住的是在思科的术语中,"中小型企业"可能是一个相当大的企业,至少在我的观点中是这样的。这个工具是免费的,因此,你可以从思...

weixin_34167043的博客 565
上一篇: 思科ASR1000从ipbase提升到enterprise方法
下一篇: ZoneBasedFirewall对系统性能影响
wunderup
博客等级 码龄20年 13粉丝 79原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值