不久前,Fei Ge参加了官方的“ Q&A”专栏。在本专栏中,我和我的网民以“对Linux网络的深入了解”为主题,并就每个人在日常生活中关注的某些问题进行了一些技术讨论。

今天,我将记录此活动中讨论的所有内容,并与所有人分享!
问题1:在虚拟化时代,端口号为65535是不够的,对吗?
问:Linux最多可以具有65535个端口。因此,现在,当虚拟化普遍存在时,这65535更可能被填充。如何处理?
答:首先,Linux最多可以拥有65535个端口的陈述不准确。由于即使在一个Linux上也可以配置多个IP,因此每个IP可以具有65535个端口。
让我们谈谈现代虚拟化。在2008年发布的.6.24内核版本中,引入了一个称为网络名称空间的内容。这是现代容器虚拟化的基石。在每个名称空间中,您都可以拥有自己的独立IP,端口号,路由表和其他网络资源。对于现在常用的一个,一个对应于网络名称空间(在非宿主模式下)。每个容器都有65536个端口。
要知道的另一件事是,如果您连接到不同的服务器,即使您只有一个IP,也可以使用相同的端口号连接到不同的服务器。因此,不必担心65535限制。
问题2:访问该机器的IP是否会通过开关或路由器?
问:IP填充您自己的计算机会通过交换机还是路由器?
答:不,您可以尝试。无论是使用本机IP还是127.0.0.1,它都仅通过环回设备lo。您可以通过在LO上捕获数据包来看到,但是您无法在真实的物理网卡下捕获数据包。
问题3:服务器端中只有一个端口,发送和接收请求是否会混乱?
问:老师,我认为我不明白,但是在阅读了上述问题之后,我有些困惑。当服务器收到Web或其他请求时,无论是80还是443,暴露的端口基本上都是相同的,并且HTTP请求到达。此后,请求会互相干扰吗?或者在同一端口上可以找到多少个HTTP请求,我自己都搞砸了,谢谢老师!
答:我们将通过三个步骤理解您提到的问题。
首先,服务器端将在接收新连接时创建新的连接。这个新的具有完整的Quad(内部源IP,源端口,目标IP和目标端口)信息,并以某种方式进行管理。
其次,TCP网络软件包内的源IP,源端口,目标IP和目标端口都在中载有。
第三。当内核收到网络数据包时,处理协议堆栈时将解析数据包标头,并将包装头中的完整Quad与内核中的托管匹配匹配。只有当四核信息完全一致时,收到的数据才能将数据放在接收队列中。用于不同请求的上部四倍信息并不完全一致,因此请求不会彼此干扰。
问题4:互联网上著名的C10K并发连接的具体问题是什么?
问:互联网上著名的C10K并发连接的具体问题是什么?
答:C10K问题是历史上的问题。在Linux上最早的开发模型中,只有线程编程模型。如果用户来了,他需要使用过程来处理它。但是,随着开发的爆炸式增长,服务器端支持的并发次数越来越高。如果您继续使用此模型,则需要投资大量的服务器资源。因此,C10K问题是处理如何同时使服务器处理10,000个用户连接请求。 EPOLL出生后,C10K不再是问题。
问题5:如何解决网络数据包丢失
问:我碰巧在TCP传输中遇到了可疑的数据包丢失。我想问老师这种问题调查的总体想法和顺序是什么。
答案:TCP传输数据包损耗问题使用数据包捕获来查看重试的方式,使用打开,使用过滤器TCP ..查找重传中的数据包。还有一个基于EBPF的轻量级工具,您也可以尝试。但是,EBPF对Linux版本有很高的要求。
问题6:机器最多可以支持多少个TCP连接?
问:机器最多可以支持多少个TCP连接?这个公式是什么?如何计算,多少个Linux服务器可以支持64GB?
答:机器可以支持多少个TCP连接?让我们谈谈服务器端。首先,它受到内核参数的限制,例如在Linux中配置的打开文件手柄的数量,但是这些易于修改,只需调整一些参数即可。第二个是内存,这是一个硬限制。至少必须约为3.3 kb。因此,如果计算限制下的TCP连接数,则只需将64 GB除以3.3kb即可。但这通常留给发送和接收缓冲区和其他应用程序
问题7:TCP需要多少内存?
问:TCP连接消耗多少内存? MySQL和用户登录信息之类的连接数量是否也是TCP连接?
答案:TCP连接在内核中消耗了两个内存。一种意味着TCP连接约为3.3k。第二个是用于接收和发送数据的缓冲区。这可以很大或很小。传输速度很大时速度更快,并且记忆在较小时会保存。但是在较新的版本中,只要发送和接收完成,就可以回收内存。您在MySQL用户登录等中提到的数据等。TCP中传输的数据。该数据取决于如何存储用户流程。如果它存在于内存中,则占据内存,并且将其存储在磁盘中,则占据磁盘。
问题8:CPU飙升至100%
问:您好,老师,我的在线服务总是使CPU飙升至100%,然后突然落在某个时刻,而记忆和IO几乎是正常的。我应该从哪个方面开始?
答:这需要对特定问题进行特定分析。这取决于用户状态内存消耗是否高还是内核状态消耗率高。相关命令包括TOP,SAR等。如果它处于内核模式,请使用命令来计算系统调用的耗时情况,以查看是否存在特别长时间的时间。您还可以考虑使用PURP火焰图进行分析。
问题9:是否有任何推荐的网络调整和监视工具?
问:张老师,您是否有任何推荐的网络调整和监视工具?
答:网络相对复杂。最好先了解其内部工作原理,然后查看“深入了解Linux网络”,然后找到相应步骤的工具。您可以看一下“表演顶部”,这更好。
问题10:net.ipv4有很多属性,您需要一个一个一个一个一个记忆吗?
问:net.ipv4有很多属性,您需要一个一个一个一个一个一个属性吗?现在,我正处于不知道从哪里开始的阶段。我不知道您的书是否可以帮助建立知识结构,知道它是什么以及它是为什么。
答:无需记住它。最重要的是要了解网络工作的基本工作原理,以便在查看这些参数时很容易理解。这就像割牛的厨师一样。如果您对牛骨骼肌的内部原理有非常透彻的了解,那么切开牛时自然会很容易。而不是死记硬背地记住这些内核参数。
我们的“深入了解Linux网络”是一本书,介绍了网络的基本工作原理。该书将介绍半连接的排队和完整连接的工作方式。如果您了解此原则,则可以轻松理解此参数。而且,当您遇到TCP中的三个握手等问题时,您可以快速解决并找到原因。
问题11:在线被冲走,请帮助
问:您好,我曾经解决了在在线服务器高峰期间被冲走的问题。原因是它们与网络有关。在使用搜索引擎进行解决之后,他们仍然处于知道真相但不知道原因的情况下。请帮我
首先,Gao Feng被冲走了。阅读MySQL后,该程序没有任何异常,并且怀疑这是一个网络问题。然后-n | AWK计算了各种TCP连接状态的数量,发现其他很少的独立机器也很少,这也很高。带宽直接填充
然后修改文件 - 最大并配置以下和其他一些属性,然后立即删除。
<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre data-tool="mdnice编辑器" style="margin: 12px auto;color: rgb(0, 0, 0);font-size: 16px;text-align: left;border-radius: 5px;box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 2px -2px, rgba(0, 0, 0, 0.12) 0px 3px 6px 0px, rgba(0, 0, 0, 0.09) 0px 5px 12px 4px !important;"><code style="padding: 15px 16px 16px;overflow-x: auto;color: rgb(171, 178, 191);display: -webkit-box;font-family: "Operator Mono", Consolas, Monaco, Menlo, monospace;font-size: 12px;background: rgb(40, 44, 52);border-radius: 5px;">net.ipv4.tcp_syncookies = 1<br />net.ipv4.tcp_tw_reuse = 1<br />net.ipv4.tcp_tw_recycle = 1<br /></code></pre></p>最后,添加了NGINX IP电流限制以解决问题。尽管我搜索了几个NET.IPV4配置的含义,但我仍然不知道为什么有这么多。
答:问题的根本原因是,在流量较大(可能攻击流量)请求的情况下,使用短连接。每个短连接的主动释放不会直接消失,但将首先释放内核对象的部分,然后进入状态,然后将端口号占据约2分钟。重用的共同功能是最大程度地减少在房屋上所花费的时间,以便可以尽快发布端口。尽快退出以释放端口,确保当以后的用户到来时,当服务器请求数据服务器(例如MySQL)时,可能会有足够的端口。
问题12:建立Linux网络连接后,文件层将发生什么变化?
问:建立Linux网络连接后,文件层发生了哪些更改?据说Linux中的所有内容都是文件。如何通过网络连接找到连接的相应文件?是一个文件还是多个文件?
答:Linux中的所有内容都是文件,实际上是一个文件结构。磁盘上的文件具有这样的文件对象,这是内核上层的抽象。
但是磁盘文件在内核上仍然完全不同。 CAT命令无法将数据内容显示为一个。如果您必须使用类似猫的功能,则可以使用Linux下的NCAT命令。
服务器端
<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre data-tool="mdnice编辑器" style="margin: 12px auto;color: rgb(0, 0, 0);font-size: 16px;text-align: left;border-radius: 5px;box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 2px -2px, rgba(0, 0, 0, 0.12) 0px 3px 6px 0px, rgba(0, 0, 0, 0.09) 0px 5px 12px 4px !important;"><code style="padding: 15px 16px 16px;overflow-x: auto;color: rgb(171, 178, 191);display: -webkit-box;font-family: "Operator Mono", Consolas, Monaco, Menlo, monospace;font-size: 12px;background: rgb(40, 44, 52);border-radius: 5px;"><span style="color: rgb(92, 99, 112);font-style: italic;line-height: 26px;"># ncat -v -lp 8081</span><br />Ncat: Version 6.40 ( http://nmap.org/ncat )<br />......<br />hello world<br /></code></pre></p>客户
<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre data-tool="mdnice编辑器" style="margin: 12px auto;color: rgb(0, 0, 0);font-size: 16px;text-align: left;border-radius: 5px;box-shadow: rgba(0, 0, 0, 0.16) 0px 1px 2px -2px, rgba(0, 0, 0, 0.12) 0px 3px 6px 0px, rgba(0, 0, 0, 0.09) 0px 5px 12px 4px !important;"><code style="padding: 15px 16px 16px;overflow-x: auto;color: rgb(171, 178, 191);display: -webkit-box;font-family: "Operator Mono", Consolas, Monaco, Menlo, monospace;font-size: 12px;background: rgb(40, 44, 52);border-radius: 5px;"><span style="color: rgb(92, 99, 112);font-style: italic;line-height: 26px;"># nc -v 127.0.0.1 8081</span><br />Ncat: Version 6.40 ( http://nmap.org/ncat )<br />Ncat: Connected to 127.0.0.1:8081.<br />hello world<br /></code></pre></p>问题13:是否有任何常见的在线配置核心参数?
问:关于连接和性能瓶颈,我们经常在网上遇到问题时搜索解决方案。是否有必须在线配置的通用核心参数?
答:实际上,默认情况下已经准备了一般内核。不幸的是,企业之间存在太多差异,因此基本上不可能将一组参数调整到所有企业中。这也取决于工程师根据当前业务的特征进行适当而灵活的调整。
--- EOF ---
建议↓↓
# 深入理解Linux网络:虚拟化时代65535端口号处理技巧
# 深入理解Linux网络
# 虚拟化时代65535端口号处理技巧
# 数据包
# 最多
# 都是
# 您可以
# 多少个
# 如果您
# 自己的
# 端口号
# 是一个
# 这是
# 所有内容
# 编辑器
# 我不
# 工作原理
# 让我们
# 多个
# 有很多
# 只需
# 它是
# 这是一个
# 抖音seo付费课程
# 上海常规网站建设流程
# 江苏一站式网站建设预算
# 佛山网站排名优化推广
# 乐山营销推广咨询公司
# 丰县seo优化推广方案
# 跨年推广营销活动方案
# 班级网站 建设目标
# 西安网站推广培训机构
# 房间优化视频素材网站下载
# 重庆营销推广产品公司
# 德云社网站建设素材下载
# 东莞网络seo优化
# 瑞安网站制作优化推广
# 台山市网站seo排名
# 武穴网站建设推广
# 洛阳网站建设多少钱
# juzi seo
# 绍兴seo收费标准
# 上海营销推广方案
相关文章:
学会这8个微信社群被动引流的小技巧,助你流量转化快速飙升!
SEO笔记:如何打造高效的SEO策略提升网站排名,企业网站优化网站推广
作品类别-打开创意世界的大门,seo巡演
做好搜索,未来,天涯发帖 乐云seo
可以长期兼职写作赚钱的三大平台,搞点副业赚钱轻轻松松!
最受欢迎、效率最高的3种APP推广方法以及相关实用小技巧!
微信公众号变现该怎么做?微信公众号变现的四个步骤!
二次创作的魅力与潜力:创意无限的数字时代,网站优化发什么内容
探索数字营销的奥秘,SEO与SEM的完美融合,网球项目营销策略与推广计划
联盟行业未来想要持续健康发展该如何去做?
分享10个很火的淘客联盟赚钱渠道,副业搞起来!
SEO通过-如何通过SEO优化让你的业务在搜索引擎中脱颖而出,忠县网站seo优化排名
优秀网站设计,构建吸引人的数字世界门户,卓越的网站设计,打造吸引人、现代化的数字世界门户
SEO新站优化指南:快速提升排名的必备技巧,广州抖音seo合作
常德SEO优化,如何让您的网站在搜索引擎中脱颖而出,发展seo优化优惠吗
怎么辨别哪些教程是有用的不是骗人的?
国外广告联盟是怎么赚钱的?看完这几个案例收入吓你一跳!
免费写文章,轻松解决内容创作难题,安徽服务网站建设大全
教你如何足不出国就能轻松操作国外广告联盟赚取美金!
SEO针对中小企业的增长潜力:如何通过精准优化抢占市场先机,网站建设的目的与意义
SEO站群:打造强大网络营销引擎,助力企业快速提升排名与流量,平谷seo网站营销推广
优化百:开启数字时代的智能营销新时代,长安区竞价网站推广排名
2021网站内容优化这么做,快速提高网站排名
怎么让自己的网站更赚钱?利用网站广告赚钱的四大方法!
通过淘客联盟赚钱的4种主流的淘客app模式分析!
SEO那么重要,企业如何通过它脱颖而出?,永安网站seo优化
掌握了这6种免费的主流网络推广方法,引流获客不再是问题!
百度广告联盟怎么加入?申请条件有哪些?
福建百度推广的费用如何取出来?,微山全网营销推广公司
单页网站的崛起与创新,单页网站,现代设计与用户体验的革命性突破,单页网站,现代设计与用户体验的革命性突破
广告投放的渠道和方法有哪些?各自的优势在哪?
SEO做法-提升网站流量与排名的关键秘诀,私房米线怎么营销推广的
最常见的四种操作项目赚钱的方法分享!
哪类的产品广告适合广告模式来进行推广?
引流推广赚钱如何实现一劳永逸?
SEO在线服务-让您的网站快速跃升至搜索引擎前列,临海seo推广免费
网赚赚钱项目的本质到底是什么?
WP原创:打造属于你的独特网站,从这里开始!,芜湖网站推广设计
无法彻底屏蔽清除的弹窗广告,竟然可以给我们带来这么多“好”处!
最新的四种0成本0投入的网络兼职赚钱项目,快来看看!
内江SEO营销保障公司,助力企业走向成功之路,泸州网站优化方法
2020年网站优化的7个SEO核心技巧!
三个适合长期做的正规、靠谱、安全的网赚项目分享!
SEO表格:优化网站排名的秘密武器,巫溪的知名网站建设
如何通过推广赚钱?推广赚钱的项目有哪些?
清远设备SEO优化费用解析,如何精准提升品牌曝光度?,刷推广网站点击率
SEO而且:打造高效网站流量增长的秘密武器,滁州抖音营销推广软件
SEO兼职:如何通过SEO兼职实现收入增长与职业突破,丹东高端网站优化价格
SEO就业前景如何?打造数字时代的职业新风口,福永seo策略
世界上最热门的十款社交软件,你知道是哪些吗?
*请认真填写需求信息,我们会在24小时内与您取得联系。