摘要:
LVS原理与实现 - 实现篇 在上一篇文章中,我们主要介绍了 LVS 的原理,接下来我们将会介绍 LVS 的代码实现。 本文使用的内核版本是:2.4.23,而 LVS 的代码在路径:/src/net/ipv4/ipvs 中。 Netfilter 在介绍 LVS 的实现前,我们需要了解以下 Netfi 阅读全文
摘要:
LVS原理与实现 - 原理篇 LVS,全称 Linux Virtual Server,是章文嵩博士发起的一个开源项目。在社区具有很大的热度,是一个基于四层、性能极高的反向代理服务器。至于什么是反向代理,这里就不作详细介绍了,如果不了解可以先去阅读反向代理相关的资料。 LVS工作原理 下面先介绍一下 阅读全文
摘要:
UDP协议源码分析 UDP协议 是 User Datagram Protocol 的简称, 中文名是用户数据报协议,是 OSI(Open System Interconnection,开放式系统互联) 参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务,位于 TCP/IP协议 模 阅读全文
摘要:
Unix Domain Sockets使用 上一章介绍了Socket接口层的实现,接下来我们将会介绍具体的协议层实现,这一章将会介绍用于进程间通信的 Unix Doamin Sockets 的实现。要使用 Unix Domain Sockets 需要在创建socket时为 family 参数传入 A 阅读全文
摘要:
Socket接口的分层 Socket的英文原本意思是 孔 或 插座。但在计算机科学中通常被称作为 套接字,主要用于相同机器的不同进程间或者不同机器间的通信。Socket的使用很多网络编程的书籍都有介绍,所以本文不打算介绍Socket的使用,只讨论Socket的具体实现,所以如果对Socket不太了解 阅读全文
摘要:
IP协议源码分析 IP协议 是网络的最重要部分,毫不夸张地说,正是因为有 IP协议 才有了互联网。而 IP协议 最重要的是 IP地址,IP地址 就好像我们的家庭住址一样,用于其他人方便找到我们的位置。 当然,这篇文章并不是介绍 IP协议 的原理,有关 IP协议 的原理可以参考经典的书籍《TCP/IP 阅读全文
摘要:
源码分析 int udp_sendmsg(struct sock *sk, struct msghdr *msg, size_t len) { /*套接字的网络层表示转换成INET套接字的表示*/ struct inet_sock *inet = inet_sk(sk); /*套接字的网络层表示转换 阅读全文