![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
netWork
hakunamatataZone
这个作者很懒,什么都没留下…
展开
-
Linux环境下的网络编程
本文介绍了在Linux环境下的socket编程常用函数用法及socket编程的一般规则和客户/服务器模型的编程应注意的事项和常遇问题的解决方法,并举了具体代码实例。要理解本文所谈的技术问题需要读者具有一定C语言的编程经验和TCP/IP方面的基本知识。要实习本文的示例,需要Linux下的gcc编译平台支持。 Socket定义 网络的Socket数据传输是一种特殊的I/O,Socke转载 2009-11-22 15:55:00 · 265 阅读 · 0 评论 -
Epoll为我们带来什么
Q:网络服务器的瓶颈在哪?A:IO效率。 在大家苦苦的为在线人数的增长而导致的系统资源吃紧上的问题正在发愁的时候,Linux 2.6内核中提供的System Epoll为我们提供了一套完美的解决方案。传统的select以及poll的效率会因为在线人数的线形递增而导致呈二次乃至三次方的下降,这些直接导致了网络服务器可以支持的人数有了个比较明显的限制。 自从Linux提供了/dev/epol转载 2009-11-22 15:51:00 · 246 阅读 · 0 评论 -
epoll用法举例说明(续)--给echo服务器增加读线程池
linux 2.6内核epoll用法举例说明(续)--给echo服务器增加读线程池 上篇文章使用linux内核2.6提供的epoll机制实现了一个反应式echo服务器,使用反应式服务器的最大好处就是可以按cpu的数量来配置线程池内线程的线程数而不是根据客户端的并发量配置线程池。我是第一次使用pthread库来写线程池,使用的是工作队列方式的线程池。我感觉作队列方式的线程池可以当成一种设计模式转载 2009-11-22 15:57:00 · 1020 阅读 · 0 评论 -
TraceRoute(tracert)实现原理
TraceRoute程序的实现主要涉及IP头部生存时间(time to live, TTL)字段的使用。 设置TTL字段的目的是为了防止数据报由于选路错误或其他软硬件原因从而导致在网络中无休止的流动,TTL字段指定了数据报的生存时间。TTL的初始值由源主机设置,当一份数据报经过路由器时,处理该数据报的路由器都需要把TTL值减去数据报在路由器中停留的秒数。但事实上大多数路由器只是简单地将T转载 2009-12-10 16:24:00 · 2080 阅读 · 0 评论