![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
网络编程
文章平均质量分 78
lcf枫
shopee 后台开发
展开
-
socket可读可写条件
欢迎转载,转载请注明原文地址:http://blog.csdn.net/majianfei1023/article/details/45788591socket可读可写条件,经常做为面试题被问,因为它考察被面试者对网络编程的基础了解的是不是够深入。要了解socket可读可写条件,我们先了解几个概念:1.接收缓存区低水位标记(用于读)和发送缓存区低水位标记(用于写):每个转载 2017-10-18 15:20:23 · 351 阅读 · 0 评论 -
TCP状态转转移
TCP状态转移3次握手 4次挥手这是典型的TCP流程,3次握手机建立连接,4次挥手断开连接。在这中间就是相应的数据传输。为什么3次握手?假设如果是2次握手,则会出现这种情形。当一个客户端发送的请求在网络中延误,而此时客户端已经超时。当服务器收到了无效请求,任然去发送ack给客户端,并且由于没有第3次握手就会认为已经建立链接。这中情况会耗费服务端资源。为什么4次挥手?因为TCP是全双工。客户端向服务...原创 2018-05-21 14:35:30 · 1108 阅读 · 0 评论 -
ARP协议
ARP协议ARP(Address Resolution Protocol,地址解析协议)是将IP地址解析为以太网MAC地址(物理地址)的协议。在局域网中,当主机或其他网络设备有数据要发送给另一个主机或设备时,它必须知道对方的网络层地址(即IP地址)。但是仅仅有IP地址是不够的,因为IP数据报文必须封装成帧才能通过物理网络发送。因此发送方还需要有接收方的物理地址。字段解释:以太网的目的地址和源地址:...原创 2018-05-21 15:37:22 · 1969 阅读 · 0 评论 -
流量控制和拥塞控制
流量控制和拥塞控制流量控制和拥塞控制是有区别的。流量控制:控制双方的传送速率在双方可以接受的范围内。拥塞控制:描述的是整个网络的状态,通过是否重传以及传输速率的大小去感知网络的拥塞情况,进而进行调整,达到恢复网络的目的。(感知整体网络,通过控制每一个个体去fix网络状况)。流量控制流量控制是通过滑动窗口来实现的。滑动窗口协议是传输层进行流控的一种措施,接收方通过通告发送方自己的窗口大小,从而控制发...原创 2018-05-21 18:40:55 · 7876 阅读 · 0 评论 -
TCP问题定位
TCP连接状态查询我们通过了解TCP各个状态,可以排除和定位网络或系统故障时大有帮助。(总结网络上的内容)Linux 查看tcp的状态命令:netstat -nat 查看TCP各个状态的数量lsof -i:port 可以检测到打开套接字的状况sar -n SOCK 查看tcp创建的连接数 (未使用过)tcpdump -iany tcp port 9000 对tcp端口为9000的进行抓包 (待...转载 2018-05-22 16:12:33 · 945 阅读 · 0 评论 -
用tcpdump抓包
用tcpdump抓包简介网络数据包截获分析工具。支持针对网络层、协议、主机、网络或端口的过滤。并提供and、or、not等逻辑语句帮助去除无用的信息。tcpdump - dump traffic on a network例子不指定任何参数监听第一块网卡上经过的数据包。主机上可能有不止一块网卡,所以经常需要指定网卡。tcpdump监听特定网卡tcpdump -i en0监听特定主机例子:监听本机跟...转载 2018-05-22 16:33:18 · 303 阅读 · 0 评论 -
MAC 下ifconfig看IP
MAC 下ifconfig看IPifconfig在linux下经常是用来查看对应的端口的IP是多少。但是..MAC下会显示特别多的硬件设备让人搞不清楚到底IP是哪里来的。可以说是一脸懵逼。。查了一下可以通过这个命令去看硬件和其对应的缩写。networksetup -listallhardwareports这里就能够了解到了, 我们走wifi出去,所以简写是en0。对应en0的IP是192.168....原创 2018-05-22 16:57:23 · 34820 阅读 · 2 评论 -
select poll epoll 总结
IO多路复用 IO多路复用是个由来已久的东西,看过很多资料,甚至于看过很多遍资料但是没有自己总结或者再梳理一遍终究理解会没那么强。英文全称为 IO Multiplexing。 Multiplexing 就是多路 multi。整个意思理解为IO的多路复用。为什么会有IO多路复用IO多路复用使用了一个线程(一个独立执行链)对多个IO进行监控。在没用这个概念之前都是一对一的关系,也...原创 2018-06-15 11:48:53 · 317 阅读 · 0 评论