
TCP/IP
junlon2006
Coding for fun.
展开
-
http和socket之长连接和短连接区别
http和socket之长连接和短连接区别转载于:http://www.cnblogs.com/lancidie/p/4524562.htmlTCP/IP TCP/IP是个协议组,可分为三个层次:网络层、传输层和应用层。 在网络层有IP协议、ICMP协议、ARP协议、RARP协议和BOOTP协议。 在传输层中有TCP协议与UDP协议。 在应用层有:TCP包括FTP、转载 2017-01-13 10:48:33 · 246 阅读 · 0 评论 -
Linux流量监控工具 - iftop (最全面的iftop教程)
转载于:https://www.vpser.net/manage/iftop.html在类Unix系统中可以使用top查看系统资源、进程、内存占用等信息。查看网络状态可以使用netstat、nmap等工具。若要查看实时的网络流量,监控TCP/IP连接等,则可以使用iftop。一、iftop是什么?iftop是类似于top的实时流量监控工具。官方网站:http://w转载 2017-04-17 10:48:37 · 10963 阅读 · 0 评论 -
socket select
转载于:http://blog.sina.com.cn/s/blog_a43aa27401015kt9.html 从别人的博客中转载过来了这一篇文章,经过重新编辑排版之后展现于此,做一个知识点保存与学习。 select函数用于在非阻塞中,当一个套接字或一组套接字有信号时通知你,系统提供select函数来实现多路复用输入/输出模型,原型:int转载 2017-06-16 16:47:38 · 2692 阅读 · 0 评论 -
TCP VEGAS
观察RTT、接收速率等指标,预判拥塞,并提前调整(不需router支持)BaseRTT = min(SampleRTT)ExpectedRate = CWnd / BaseRTTActualRate: 上一个RTT被ACK的字节数/ 上一个SampleRTTDiff = ExpectedRate – ActualRateDiff太小,增加CW原创 2017-05-21 22:03:17 · 1346 阅读 · 0 评论 -
easy way to handle non-block tcp socket
static result_t __non_block_connect_process(void *sock){ tcp_sock_t *tcp_sock = (tcp_sock_t *)sock; result_t rc = E_OK; struct sockaddr_in addr; LOGT(C_TCP_THREAD_TAG, "Enter")原创 2017-08-18 17:12:36 · 204 阅读 · 0 评论 -
ubuntu下lua插件使用方式
找到wireshark全局配置文件夹地址 配置方法:STEP 1:cd /usr/share/wiresharkvi init.lua添加yunshang.lua的绝对路径,如下图STEP 2:不能用超级用户运行wireshark普通用户启用wireshark配置命令:root@Sandbox# groupadd wireshar原创 2017-09-17 11:46:39 · 1006 阅读 · 0 评论 -
http
转载于:http://www.cnblogs.com/hyddd/archive/2009/03/31/1426026.html浅谈HTTP中Get与Post的区别 Http定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETE。URL全称是资源描述符,我们可以这样认为:一个URL地址,它用于描述一个网络上的资源,而HTTP中的GE转载 2017-11-08 14:56:16 · 166 阅读 · 0 评论 -
tcp rto
计算RTT以及RTO的代码比较简单,我们先来看原理,首先相关的rfc有两篇分别是rfc793以及rfc6298,而相关的paper有一篇,那就是Van Jacobson和Michael J. Karels的 Congestion Avoidance and Control这篇paper,这篇1988年的paper中描述的RTT计算方法,就是我们当前所使用的计算方法,可能有的操作系统有一点修改,不过转载 2017-10-14 21:37:09 · 851 阅读 · 0 评论 -
TCP socket SIGPIPE捕获
在socket通信中,偶发的PEER关闭链接(断网、异常FIN等)系统会抛出SIGPIPE信号,默认处理方式为进程退出,需要做屏蔽处理,否则系统会自动退出。解决SIGPIPE有好几种方法:1、设置socket属性:setsocketopt(sock_fd, SOL_SOCKET, SO_NOSIGPIPE, &(int){1}, sizeof(int));2、丢弃SIGPIPE信号:sig...原创 2018-03-07 11:20:04 · 1377 阅读 · 0 评论 -
TCP的拥塞控制
转载于:http://blog.youkuaiyun.com/sicofield/article/details/97083831.引言 计算机网络中的带宽、交换结点中的缓存和处理机等,都是网络的资源。在某段时间,若对网络中某一资源的需求超过了该资源所能提供的可用部分,网络的性能就会变坏。这种情况就叫做拥塞。 拥塞控制就是防止过多的数据注入网络中,这样可转载 2017-04-14 13:53:20 · 251 阅读 · 0 评论 -
TCP BBR
转载于:http://m.blog.youkuaiyun.com/article/details?id=53730374Linux 4.9内核的发布,最令人兴奋的特性当属BBR算法了,这个算法的发布让4.9内核简直成了一个里程碑。在4.9内核发布之前,我就详细分析过BBR算法的诸多细节,我的感情色彩从推崇到平淡直到冷漠和咒骂,我个人在刚刚刨去了对BBR的无知而黄袍加身给它的光环后,从头来看,我应该在最初的转载 2017-04-29 10:43:11 · 1693 阅读 · 0 评论 -
TCP的ACK确认系列 — 延迟确认
转载于:http://blog.youkuaiyun.com/zhangskd/article/details/45116553主要内容:TCP的延迟确认、延迟确认定时器的实现。内核版本:3.15.2我的博客:http://blog.youkuaiyun.com/zhangskd 延迟确认模式 发送方在发送数据包时,如果发送的数据包有负载,则会检测拥塞窗口是否转载 2017-04-13 23:13:01 · 2514 阅读 · 0 评论 -
epoll使用详解
转至:http://blog.youkuaiyun.com/ljx0305/article/details/4065058epoll - I/O event notification facility在linux的网络编程中,很长的时间都在使用select来做事件触发。在linux新的内核中,有了一种替换它的机制,就是epoll。相比于select,epoll最大的好处在于它不会随着监听fd数转载 2017-02-12 12:58:16 · 181 阅读 · 0 评论 -
Http协议与TCP协议简单理解
源地址:http://www.cnblogs.com/dingjiaoyang/p/5326544.htmlTCP协议对应于传输层,而HTTP协议对应于应用层,从本质上来说,二者没有可比性。Http协议是建立在TCP协议基础之上的,当浏览器需要从服务器获取网页数据的时候,会发出一次Http请求。Http会通过TCP建立起一个到服务器的连接通道,当本次请求需要的数据完毕后,Http会立即转载 2017-03-22 10:32:27 · 291 阅读 · 0 评论 -
NAT穿越
转载于:http://www.h3c.com.cn/Service/Channel_Service/Operational_Service/ICG_Technology/201001/662399_30005_0.htm转载 2017-03-12 19:55:59 · 383 阅读 · 0 评论 -
使用 lua 编写 wireshark 协议解析插件
源地址:http://www.cnblogs.com/wendellyi/p/3475461.html一、平台操作系统:windows 7wireshark:1.10.3lua:5.1 二、准备lua 语言基本语法,特别是关于表操作和循环wireshark 文档,包括用户使用文档和开发者文档,这些在 wireshark 官方网站都转载 2017-04-09 13:47:11 · 983 阅读 · 0 评论 -
主机序和网络序
http://blog.youkuaiyun.com/byrsongqq/article/details/6567579不同的CPU有不同的字节序类型 这些字节序是指整数在内存中保存的顺序 这个叫做主机序 最常见的有两种:1. Little endian:将低序字节存储在起始地址 2. Big endian:将高序字节存储在起始地址 LE little-endian 最符合转载 2017-03-31 13:39:05 · 814 阅读 · 0 评论 -
TCP checksum
转载于:http://blog.youkuaiyun.com/zhangskd/article/details/11770647概述 TCP校验和是一个端到端的校验和,由发送端计算,然后由接收端验证。其目的是为了发现TCP首部和数据在发送端到接收端之间发生的任何改动。如果接收方检测到校验和有差错,则TCP段会被直接丢弃。TCP校验和覆盖TCP首部和TCP数据,而IP转载 2017-03-31 13:46:45 · 4451 阅读 · 0 评论 -
Sniffing with Wireshark as a Non-Root User
源地址:http://packetlife.net/blog/2010/mar/19/sniffing-wireshark-non-root-user/By stretch | Friday, March 19, 2010 at 11:39 a.m. UTCThis article focuses on Linux and some UNIXes. For Window原创 2017-04-11 15:40:43 · 428 阅读 · 0 评论 -
Wireshark lua插件
源地址:https://www.zybuluo.com/natsumi/note/77991参考: http://yoursunny.com/t/2008/Wireshark-Lua-dissector/ http://yoursunny.com/study/IS409/ScoreBoard.htm http://www.360doc.com/content/13/1021转载 2017-03-26 12:26:43 · 4293 阅读 · 0 评论 -
TCP_NODELAY 和 TCP_NOPUSH的解释
转载:https://www.cnblogs.com/wajika/p/6573014.html一、问题的来源今天看到 huoding 大哥分享的 lamp 面试题,其中一点提到了:Nginx 有两个配置项: TCP_NODELAY 和 TCP_NOPUSH ,请说明它们的用途及注意事项。 初看到这个题目时,感觉有点印象:1、在nginx.conf 中确实有这两项,记得就是...转载 2019-01-19 16:08:57 · 1552 阅读 · 0 评论