不久前,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 ---
建议↓↓
相关推荐:
SEO武汉:如何提升武汉地区网站的搜索引擎排名,京东怎样提高关键词排名
零基础建站神器快刻云建,轻松打造美观实用企业网站,贵阳seo搜索栏项目
SEO动态:2025年SEO趋势与优化技巧解析,快消品营销推广找哪家
参加白杨 seo 师徒群培训两个月心得总结:大专女技术员的成长之路,网站建设最好的问题
企航站:专注 SEO 优化与模板建站,网站栏目页标题优化指南,黄石网络营销推广
网站建设需融入 seo 优化元素,避免两大误区,湖南抖音seo招商
SEO任何:如何通过精准优化让网站流量突破极限,河源网站公司推广平台
SEO职责:为网站注入流量,提升品牌竞争力,韶关seo关键字优化
依托安恒云鉴平台,构建教育行业网络安全综合治理体系,廊坊网站怎样优化
聚焦交通强国建设,港航管理服务中心推动水运高质量发展,汽车网站建设程序流程
分析优机制:构建未来企业竞争力的核心驱动力,线上推广营销案例分析
SEO怎么做才能提升网站流量与排名?这篇文章给你全攻略,企业网站建设指标
SEO详解:如何优化你的网站提升排名,获得更多流量,历城区网站优化
南通市政府发布中央创新区建设投资项目受理公示,涉及中央森林公园等建设,全场景营销推广案例分析
企业SEO:如何通过搜索引擎优化提升企业网络竞争力,晋江网站建设收费多少
62.9K 偏词的定义与整站优化的作用及特点,seo中文url
网站建设需结合流量数据进行系统分析,以了解用户关注热点,包包营销推广
包河网站建设一站式服务,解决设计制作及推广难题,惠水网站关键词排名公司
SEO资讯:最新趋势,提升网站排名,快速突破流量瓶颈,武清seo优化哪家专业
SEO组织:让您的网站流量倍增的秘密武器,ebay的付费营销推广
芜湖江北新区(中江新城)控制性详细规划公示,发展目标及规模曝光,景德镇网站运营优化平台
安宁市打造云南滇西旅游第一站,文旅融合发展成果显著,福清网页seo报价
福州网站建设:如何挑选靠谱的建站服务商?,南昌网站关键词推广
中国化学工程集团有限公司:工业工程领域的领军者,共建一带一路的排头兵,泸县网站建设
健康生活,从今天开始:全面提升你的生活质量,延安网站推广价格
多语种网站:拓展全球客户市场,提升网站访问体验,实现 SEO 优化,宁德seo优化联系方式
网站 SEO 优化中遇到的问题及解决方法,怎么做一个热门网站推广
湖州丝绸小镇建设:纺织产业调整升级的新契机,做网站推广员
代哥SEO-让您的网站迅速登顶搜索引擎的秘密武器,巩义网站建设报价方案
真实用户评论对英文 SEO 排名的重要性及无用页面的处理,东西湖seo排名价格