美文网首页
几个网络相关的问题

几个网络相关的问题

作者: 莫那一鲁道 | 来源:发表于2019-06-05 22:25 被阅读0次

1 一台机器最多支持多少 tcp 连接

首先,一个连接的组成是 【local ip, local port, remote ip, remote port】,作为服务端 ,前两者是不变的。

那么一个端口,ipv4地址,2的32 次方 * 端口数(2 的 16 次方)= 2的48 次方

另外,还需要修改文件句柄大小。ulimit 是一个进程的句柄大小。默认 1024.

2 连接数过多会带来什么影响

连接数过多之tcp回收问题 time wait,即服务端主动关闭连接。

可修改 vi /etc/sysctl.conf 文件,修改 timeout,socket 回收,重用 tcp,开启 syn cookies。 4 个方式。

3 cpu0 显示繁忙

软中断过高,而且大部分都集中在同一个CPU。

用软件处理,有 RPS,通过对流的 hash,负载到不同的 cpu,问题是不能够很好的让 进程的 cpu 和处理中断的 cpu 是同一个 cpu,导致 cache miss。为了解决这个问题,linux 后来的版本,有个 RFS 的方案,防止 cache miss。但是据说还是不太好用。

购买支持多队列的网卡硬件,可以彻底解决 软中断集中在单个 cpu0 的问题(看版本)。

从这个话题换个角度说:当你的网卡没有打满,cpu 满载了,除了用 pidstat 看看是不是程序问题,或者 cs 问题,还可以看看是不是 cpu0 软中断太多导致的。

4 time wait 和 close wait 区别

time wait 是主动关闭,这个是为了确保旧连接的数据对新连接的影响。通常是 2msl。而且资源会被占用。

解决办法,1 尽量不要主动断开连接。

2 另外,关闭 socket 的 linger 选项。

close wait 对方关闭。此时,我们需要再调一次 close 来主动关闭。

5 写文件经历几层 cache

普通调用:1 层,如果是 DIO,则是 0 层。


image.png

6 tcp 滑动窗口是什么

滑动窗口是接受数据端使用的窗口大小,用来告知发送端接收端的缓存大小,以此可以控制发送端发送数据的大小,从而达到流量控制的目的

7 为什么有网卡中断

可以认为是“唤醒” CPU 处理网卡数据,否则网卡缓存会溢出,导致丢弃数据。

还有一种 DMA 的方式。

8 bio 有什么好处,什么地方用 bio

BIO方式适用于连接数目比较小且固定的架构,这种方式对服务器资源要求比较高,并发局限于应用中,JDK1.4以前的唯一选择,但程序直观简单易理解。

相关文章

  • 几个网络相关的问题

    1 一台机器最多支持多少 tcp 连接 首先,一个连接的组成是 【local ip, local port, re...

  • 网络相关问题

    (1)Http Get和Post方法 GET:无副作用,幂等,不可带 Request BodyPUT:副作用,幂等...

  • 网络相关的问题

    获取response的状态码

  • openwrt几个网络相关的配置

    先记录下现在遇到的网络相关配置,以后会逐渐增加。1、wifi配置:/lib/wifi/mac80211.shopt...

  • Linux 常用内核网络参数介绍与相关问题

    Linux 常用内核网络参数介绍与相关问题 Linux 内核中关于网络的相关参数进行简要介绍。然后对常见相关问题的...

  • 记几个Qt相关的问题

    我用Qt写程序也两年多了,主要是用这玩意做课程大作业、课程设计之类的玩意。期间遇到过很多奇怪的问题,这里做一下整理...

  • Viewport 和几个相关问题

    Viewport 和几个相关问题 什么是 Viewport Viewport 是当前浏览器的可视内容范围,对于桌面...

  • 面试问题,网络相关

    1. 进程间通信方式? 本地的进程间通信(IPC)有很多种方式,但可以总结为下面4类: 消息传递(管道、命名管道(...

  • iOS网络相关问题小结

    1.网络模型 1.1 OSI 七层模型 某一层的服务就是该层及其下各层的一种能力,它通过接口提供给更高一层。 (关...

  • 网络相关面试问题

    注意:本文主讲网络相关面试问题,包括HTTP协议、HTTPS协议与网络安全、TCP/UDP区别、DNS解析。 一、...

网友评论

      本文标题:几个网络相关的问题

      本文链接:https://www.haomeiwen.com/subject/tjlexctx.html