彻底搞懂WebSocket原理
彻底搞懂WebSocket原理 1.webSocket与http webSocket是HTML5出的协议,也就是说HTTP协议没有变化, 但HTTP协议是不支持持久连接的(循环连接,长连接不算) http1.1和http1.0的区别: 根本在于对 keep-alive 的支持 http1.0默认为短链接,http1.1版本支持keep-alive,可以维持长连接(即把多个http请求...
彻底搞懂WebSocket原理 1.webSocket与http webSocket是HTML5出的协议,也就是说HTTP协议没有变化, 但HTTP协议是不支持持久连接的(循环连接,长连接不算) http1.1和http1.0的区别: 根本在于对 keep-alive 的支持 http1.0默认为短链接,http1.1版本支持keep-alive,可以维持长连接(即把多个http请求...
应读者要求,今天分享单机百万 TCP 连接测试源码 原创张彦飞allen开发内功修炼2021-02-18 19:08 收录于话题#开发内功修炼之网络篇30个 点击上方蓝字”开发内功修炼“,关注并设为星标 飞哥的硬核文章将第一时间送达~~~ 在看完服务器、客户端的两篇单机达成百万 TCP 连接的文章以后,有很多同学反馈也想实际动手做做实验,感受一下。为了方便大家,我今天就把我实验时使...
如何正确查看线上半/全连接队列溢出情况? 原创张彦飞allen开发内功修炼2021-08-23 08:33 收录于话题#开发内功修炼之网络篇30个 大家好,我是飞哥! 在《深入解析常见三次握手异常》 这一文中,我们讨论到如果发生连接队列溢出而丢包的话,会导致连接耗时会上涨很多。那如何判断一台服务器当前是否有半/全连接队列溢出丢包发生呢? 我在我早期的一篇文章里提到过,可以通过 ne...
天天讲路由,那 Linux 路由到底咋实现的!? 原创张彦飞allen开发内功修炼2022-01-13 08:28 收录于话题 #开发内功修炼之网络篇30个 #计算机网络2个 大家好,我是飞哥。 容器是一种新的虚拟化技术,每一个容器都是一个逻辑上独立的网络环境。Linux 上提供了软件虚拟出来的二层交换机 Bridge 可以解决同一个宿主机上多个容器之间互连的问题,但这是不够的。...
动手实验+源码分析,彻底弄懂 Linux 网络命名空间 原创张彦飞allen开发内功修炼2021-10-25 08:28 收录于话题 #Docker网络2个 #开发内功修炼之网络篇30个 #网络虚拟化1个 #linux内核1个 ##namespace1个 大家好,我是飞哥! 在 Linux 上通过 veth 我们可以创建出许多的虚拟设备。通过 Bridge 模拟以太网交换机...
为什么服务端程序都需要先 listen 一下? 大家好,我是飞哥。飞哥在北京摇号 9 年多,最近终于算是搞下来个北京的电动车牌,其中的艰难过程写个一万字估计都写不完。不管咋说,新能源也是车,总算是有车能开了。这几天买车卖车(外地牌)忙的团团转。不过无论多忙,硬核文章仍然不能停! 大家都知道,在创建一个服务器程序的时候,需要先 listen 一下,然后才能接收客户端的请求。例如下面的这段代...
TCP连接中客户端的端口号是如何确定的? 原创张彦飞allen开发内功修炼2021-06-17 08:28 收录于话题#开发内功修炼之网络篇30个 大家好,我是飞哥! 在 TCP 连接中,客户端在发起连接请求前会先确定一个客户端端口,然后用这个端口去和服务器端进行握手建立连接。那么在 Linux 上,客户端的端口到底是如何被确定下来的呢? 事实上很多我们平时遇到的问题都和这个端口选...
1、什么是TCP网络分层 应用层 应用程序之间如何相互传递报文,比如HTTP协议 传输层 传输层的作用是为两台主机之间的“应用进程”提供端到端的逻辑通信,比如TCP协议 网络互连层 网络互连层提供了主机到主机的通信,将传输层产生的的数据包封装成分组数据包发送到目标主机,并提供路由选择的能力。 IP协议是网络层的主要协议,TCP和UDP都是用IP协议作为网络层协议。这一层的主...
Linux网络包接收过程 智能摘要 在TCP/IP网络分层模型里,整个协议栈被分成了物理层、链路层、网络层,传输层和应用层。网络模块是Linux内核中最复杂的模块了,看起来一个简简单单的收包过程就涉及到许多内核组件之间的交互,如网卡驱动、协议栈,内核ksoftirqd线程等。当用户执行完recvfrom调用后,用户进程就通过系统调用进行到内核态工作了。以上是内核准备收包之前的重要工作,当...
HTTPS建立连接详细过程 !%5B3da51e56e8d3c767e8c837121ef67a1c.png%5D(en-resource%3A%2F%2Fdatabase%2F2612%3A0)%0A