Linux网络编程
阿波121
这个作者很懒,什么都没留下…
展开
-
sockaddr_in 和sockaddr_un的区别
sockaddr_in的结构: struct sockaddr_in { short int sin_family; unsigned short int sin_port; struct in_addr sin_addr;原创 2014-04-23 15:39:19 · 7438 阅读 · 0 评论 -
Iperf 源代码分析(三)
SocketAddr类 SocketAddr类定义在lib/SocketAddr.hpp中,实现在lib/SocketAddr.cpp中。SocketAddr类封装了网络通信中经常用到的地址结构以及在这些结构上进行的操作。地址解析也是在SocketAddr的成员函数中完成的。首先讨论一下Socket编程中用于表示网络地址的数据结构。 网络通信中的端点地址可以一般化的转载 2014-05-26 10:45:11 · 809 阅读 · 0 评论 -
Iperf 源代码分析(二)
Thread类 Thread类封装了POSIX标准中的多线程机制,提供了一种简单易用的线程模型。Thread类是Iperf的实现中比较重要的类,使Iperf实现多线程并行操作的核心。 Thread类的定义在文件lib/Thread.hpp中,其实现位于lib/Thread.cpp中。[cpp] view plaincopyprint?转载 2014-05-26 10:44:01 · 764 阅读 · 0 评论 -
Iperf 源代码分析(四)
Socket 类 Socket的定义和实现分别在文件Socket.hpp和 Socket.cpp中。它的主要功能是封装了socket文件描述符、此socket对应的端口号,以及socket接口中的listen, accept, connect和close等函数,为用户提供了一个简单易用而又统一的接口。同时作为其他派生类的基类。 Socket类的定义如下:转载 2014-05-26 10:46:17 · 531 阅读 · 0 评论 -
Iperf 源代码分析(一)
概述 前段时间学习Linux网络编程的有关知识,希望看一看这些网络编程的技术在实际的代码中是如何运用的。正巧实验室的项目中使用了开源网络性能测试软件Iperf,于是便初步分析了Iperf的源代码。现将分析代码的点滴收获写在我的Blog上,希望各位高人多多指教。 Iperf 是美国伊利诺斯大学(University of Illinois)开发的一种网络性能测试工具。可转载 2014-05-26 10:42:27 · 580 阅读 · 0 评论 -
TCP/UDP Socket编程步骤
sockets(套接字)编程有三种,流式套接字(SOCK_STREAM),数据报套接字(SOCK_DGRAM),原始套接字(SOCK_RAW);WINDOWS环境下TCP/UDP编程步骤:1. 基于TCP的socket编程是采用的流式套接字。在这个程序中,将两个工程添加到一个工作区。要链接一个ws2_32.lib的库文件。服务器端编程的步骤:1:加载套接字库转载 2014-06-25 11:30:30 · 508 阅读 · 0 评论 -
Linux c Socket编程
socket基本操作:发原创 2014-04-25 18:05:16 · 482 阅读 · 0 评论 -
Udp编程
一.UDP编程流程(1)服务器:创建套接字(socket)绑定IP地址和端口(bind)收发数据(sendto/recvfrom)关闭连接(closesocket)(2)客户端:创建套接字(socket)收发数据(sendto/recvfrom)关闭连接(closesocket)二.用于收发的函数:原创 2014-04-25 16:19:03 · 468 阅读 · 0 评论 -
TCP编程
前面专题的例子都是基于应用层上的HTTP协议的介绍, 现在本专题来介绍下传输层协议——TCP协议,主要介绍下TCP协议的工作过程和基于TCP协议的一个简单的通信程序,下面就开始本专题的正文了。 一、TCP的工作过程首先TCP是一种面向连接的,可靠的,基于字节流的传输层通信协议。TCP的工作过程可以分为三个阶段:一、连接的建立; 二、传输数据; 三、断开连接,下面就对这三个转载 2014-04-24 16:11:17 · 424 阅读 · 0 评论 -
UDP介绍
引用:前一个专题简单介绍了TCP编程的一些知识,UDP与TCP地位相当的另一个传输层协议,它也是当下流行的很多主流网络应用(例如QQ、MSN和Skype等一些即时通信软件传输层都是应用UDP协议的)底层的传输基础,所以在本专题中就简单介绍下UDP的工作原理和UDP编程的只是,希望可以对刚接触网络编程的朋友起到入门的作用。一、UDP介绍UDP和TCP都是构建在IP层之上传输层转载 2014-04-24 16:09:46 · 2283 阅读 · 0 评论 -
epoll详解
什么是epollepoll是什么?按照man手册的说法:是为处理大批量句柄而作了改进的poll。当然,这不是2.6内核才有的,它是在2.5.44内核中被引进的(epoll(4) is a new API introduced in Linux kernel 2.5.44),它几乎具备了之前所说的一切优点,被公认为Linux2.6下性能最好的多路I/O就绪通知方法。 epoll的相关系统调用epol转载 2014-12-30 19:57:26 · 385 阅读 · 0 评论