前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >初识lldp协议

初识lldp协议

作者头像
全栈程序员站长
发布2022-09-05 11:26:59
9250
发布2022-09-05 11:26:59
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

1、背景:

问题:CDN的场景下,同组cache机器规划不规范,额外产生级联带宽,造成级联带宽跑满,导致丢包和速度变慢;

愿景:

1、平台支持扫描cache机在网络中的物理位置信息,作为cache机规划的依据,避免产生级联带宽;

2、支持出口带宽和级联带宽的报警,当出现出口带宽大于级联带宽时,能报警提醒。

当前,交换机使用两层交换机堆叠,外网核心下接 外网接入;

外网核心下边一般不接服务器,或者只接入少量的如LVS,NAT,交换机等功能的服务器,外网接入下接cache服务器集群

机房交换机和机器的连接示意图如下:

部分老节点,外网核心实际上是复用的,既接服务器,又接交换机,连接示意图如下:

级联带宽(外网核心和外网接入之间的带宽)跑满,会出现节点丢包的情况;

目前,级联带宽一般为40G~60G之间(打算扩为80G)。

2、问题

同组机器接在不同交换机下,组内会产生跨级联交换机的内网带宽,跨级联带宽跑满会导致丢包;

3、分析

现状:

在做cache组规划时,没有机器在网络链路中的位置作为参考,很可能出现接在不同外网接入交换机下的机器规划在同cache组内,产生了跨级联带宽。

以下分别针对同组cahce机器:接在同一个外网接入交换机下、不同外网接入交换机下、一台cache机接在外网接入交换机下,另一台cache机接在外网核心交换机下的三种场景,分析交换机、cache机之间的内容传输大小;

假设:

用户请求到host1,host1上没有缓存文件,host2上有缓存文件。

场景1:host1与host2在同一台交换机下。

过程1、2、3:用户的请求分别经过外网核心、外网接入,到达host1;

过程4、5:host1没有命中相关缓存文件,通过外网接入1,向host2请求缓存文件;

过程6、7:host2响应host1并发送缓存文件(数据经过外网接入1)

过程8、9、10:host1响应客户端,并通过外网接入1、、外网核心将数据响应给客户端。

内网传输:

级联2 入带宽 = 1 * 请求带宽 级联2 出带宽 = 1 * 响应带宽

场景2:host1与host2在不同的外网接入交换机下。

过程1、2、3:用户的请求分别经过外网核心、外网接入,到达host1;

过程4、5、6、7:host1没有命中相关缓存文件,通过外网接入1,外网核心,外网接入2 向host2请求缓存文件;

过程8、9、10、11:host2响应host1并发送缓存文件(数据经过外网接入2、外网核心、外网接入1)

过程12、13、14:host1响应客户端,并通过外网接入1、、外网核心将数据响应给客户端。

内网传输:

级联1 入带宽 = 1 * 请求带宽 级联1 出带宽 = 1 * 响应带宽 级联2 入带宽 = 1 * 请求带宽 + 1 * 响应带宽 级联2 出带宽 = 1 * 请求带宽 + 1 * 响应带宽

场景3:host1与host2在不同的台交换机下。

过程1、2、3:用户的请求分别经过外网核心、外网接入,到达host1;

过程4、5、6、7:host1没有命中相关缓存文件,通过外网接入1,外网核心,外网接入2 向host2请求缓存文件;

过程8、9、10、11:host2响应host1并发送缓存文件(数据经过外网接入2、外网核心、外网接入1)

过程12、13、14:host1响应客户端,并通过外网接入1、、外网核心将数据响应给客户端。

内网传输:

级联2 出带宽 = 1 * 请求带宽 + 1 * 响应带宽 级联2 入带宽 = 1 * 请求带宽 + 1 * 响应带宽 级联4 出带宽 = 1 * 响应带宽 级联4 入带宽 = 1 * 请求带宽

1、平台支持lldp协议扫描,并作为cache组规划的依据;

2、规划cache组时,根据lldp扫描结果,将同交换机下的cache机规划在同组内;

5、lldp协议

提到lldp协议,我就炒鸡蛋疼。。。。摆渡来摆渡去摆渡出来的几乎是和交换机相关的lldp相关的,和Linux上的lldp协议相关的真的很少(当然不是没有,不然你现在就不会在这里看我的博客了。。当然,也可能是小编我的摆渡技能点的不够-_-~~~)

下面简单介绍一下我和lldp的第一次。。

1、服务器上面安装lldp协议:

# yum install -y lldpad

2、配置lldp协议:

for i in `ls /sys/class/net/ | egrep "em|eth|p|bond"` ; do echo "enabling lldp for interface: $i" ; lldptool set-lldp -i $i adminStatus=rxtx ; lldptool -T -i $i -V sysName enableTx=yes; lldptool -T -i $i -V portDesc enableTx=yes ; lldptool -T -i $i -V sysDesc enableTx=yes; lldptool -T -i $i -V sysCap enableTx=yes; lldptool -T -i em1 -V mngAddr ipv4=`hostname -I`; lldptool -T -i $i -V mngAddr enableTx=yes; done

3、查看lldp:

lldptool -t -n -i bond0

注意:

1、 for i in `ls /sys/class/net/ | egrep “em|eth|p|bond”` ; ( 应该包含你的网卡);

2、需要在交换机上开启lldp协议;

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/136985.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年6月2,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、背景:
  • 2、问题
  • 3、分析
  • 5、lldp协议
相关产品与服务
内容分发网络 CDN
内容分发网络(Content Delivery Network,CDN)通过将站点内容发布至遍布全球的海量加速节点,使其用户可就近获取所需内容,避免因网络拥堵、跨运营商、跨地域、跨境等因素带来的网络不稳定、访问延迟高等问题,有效提升下载速度、降低响应时间,提供流畅的用户体验。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档