Linux网络编程
xpple
linux软件开发
展开
-
RFC3208 PGM协议
https://tools.ietf.org/html/rfc3208原创 2021-02-02 17:51:47 · 550 阅读 · 0 评论 -
HAProxy负载均衡
Tcp负载均衡配置global daemondefaults log global mode tcplisten mm bind 0.0.0.0:3755 balance roundrobin mode tcp timeout connect原创 2017-05-12 18:42:50 · 292 阅读 · 0 评论 -
socket新特性之SO_REUSEPORT
翻译原文:https://lwn.net/Articles/542629/ Linux Kernel 3.9中合并了TCP/UDP的SO_REUSEPORT特性。允许多个进程(或者线程)绑定同一个端口。并监听: int sfd = socket(domain, socktype, 0); int optval = 1; setsockopt(s原创 2016-03-07 16:57:36 · 604 阅读 · 0 评论 -
高性能服务器架构(High-performace Server Architecture)
High-Performance Server Architecture高性能服务器架构来源:http://pl.atyp.us/content/tech/servers.html译文来源:http://www.lupaworld.com/home/space-341888-do-blog-id-136718.html(map注:本人看了一遍,“于我心有戚戚焉”,翻译得也很好,于是转载 2015-11-20 15:29:52 · 531 阅读 · 0 评论 -
socket server列子
以下为本人编写的几个linux下通常的服务器模型,已经经过测试。(第三方网络开发库libevent的使用案例见marioTCP,网上有下载)server.c/***@Description:模式:每个客户端连接分配一个进程(或线程)处理*@Date: 2014-03-19 1:17 AM*@Author: xl*/#include <stdio.h>#includ...原创 2014-03-19 00:46:53 · 768 阅读 · 0 评论 -
TCP/IP分片
在转载 2015-11-21 15:30:25 · 479 阅读 · 0 评论 -
struct linger 用法
Linux下tcp连接断开的时候调用close()函数,有优雅断开和强制断开两种方式。那么如何设置断开连接的方式呢?是通过设置socket描述符一个linger结构体属性。linger结构体数据结构如下: #include struct linger { int l_onoff; int l_linger;}; 三种断开方式:1. l_onoff =原创 2013-12-18 15:40:37 · 495 阅读 · 0 评论 -
epoll
一、EPOLLONESHOT:只监听一次事件,当监听完这次事件之后,如果还需要继续监听这个socket的话,需要再次把这个socket加入到 EPOLL队列里二、从man手册中,得到ET和LT的具体描述如下EPOLL 事件有两种模型:Edge Triggered (ET)Level Triggered (LT)假如有这样一个例子:1. 我们已经把一个用来转载 2013-07-19 11:50:13 · 687 阅读 · 0 评论 -
socket怎么判断客户端与服务器是否断开
传统方法是设置心跳包,就是确定一定时间就进行通讯一次。如果没有收到回复,那么就为视为断开状态列如:每5s发送一次NOOP指令。如果规定时间没收到就SHUTDOWN();原创 2012-07-25 23:57:19 · 2974 阅读 · 0 评论 -
单播,多播和广播
一、单播、多播和广播是基于TCP/IP协议进行网络编程的常用方式。 二、单播也即点对点,一般使用TCP进行连接和进行数据的传输,优点是传输稳定,数据不会丢失,除非连接中断,由于TCP连接中断时对连接的双方没有主动的断开事件,所以在编程的时候往往采用心跳的方式来检测连接是否中断,即每隔一定的间隔时间发送一个心跳包,如果在规定的时间内得不到回应,就可以判定此连接中断。当然还有一个方式可以发现连原创 2012-07-25 23:49:03 · 1573 阅读 · 0 评论