NetworkProgramming
文章平均质量分 80
slvher
这个作者很懒,什么都没留下…
展开
-
【网络编程基础笔记】struct sockaddr和struct sockaddr_in的区别和用法
编写网络应用程序时,经常会用到sockaddr和sockaddr_in这两个结构体,对于新手来说,比较容易搞混它们的区别和使用方法。本文的笔记试图讲清楚它们之间的关系和正确的用法。1. struct sockaddr_in(针对IPv4使用) struct sockaddr_in是linux kernel针对IPv4用到的socket address structure(针对I原创 2013-04-26 19:36:29 · 5750 阅读 · 0 评论 -
【Linux网络编程笔记】TCP短连接产生大量TIME_WAIT导致无法对外建立新TCP连接的原因及解决方法—实践篇
上篇笔记主要介绍了与TIME_WAIT相关的基础知识,本文则从实践出发,说明如何解决文章标题提出的问题。1. 查看系统网络配置和当前TCP状态 在定位并处理应用程序出现的网络问题时,了解系统默认网络配置是非常必要的。以x86_64平台Linux kernelversion 2.6.9的机器为例,ipv4网络协议的默认配置可以在/proc/sys/net/ipv4/下查看,其中原创 2013-05-17 21:59:10 · 7662 阅读 · 1 评论 -
【Linux网络编程笔记】TCP短连接产生大量TIME_WAIT导致无法对外建立新TCP连接的原因及解决方法—基础知识篇
最近遇到一个线上报警:服务器出现大量TIME_WAIT导致其无法与下游模块建立新HTTP连接,在解决过程中,通过查阅经典教材和技术文章,加深了对TCP网络问题的理解。作为笔记,记录于此。 备注:本文主要介绍TCP编程中涉及到的众多基础知识,关于实际工程中对由TIME_WAIT引发的不能建立新连接问题的解决方法将在下篇笔记中给出。1. 实际问题 初步查看发现,原创 2013-05-17 21:27:10 · 10232 阅读 · 2 评论 -
【网络编程笔记】Linux系统常见的网络编程I/O模型简述
1. 典型的I/O模型根据”Unix Network Programming Volume 1”一书第6.2节的说明,Linux系统支持的典型I/O模型包含下面5种:阻塞I/O(blocking I/O)非阻塞I/O(nonblocking I/O)I/O多路复用(I/O multiplexing, e.g. select and poll)信号驱动型I/O(signal driven I原创 2015-06-29 19:15:17 · 1587 阅读 · 1 评论