Network programming
文章平均质量分 90
lanmolei814
这个作者很懒,什么都没留下…
展开
-
WebService 之 WSDL文件 讲解
恩,我想说的是,是不是经常有人在开发的时候,特别是和第三方有接口的时候,走的是SOAP协议,然后用户给你一个WSDL文件,说按照上面的进行适配,嘿嘿,这个时候,要是你以前没有开发过,肯定会傻眼,那如果你想学习的话,就认真的看下面的讲解咯:一、WSDL概述 WebServices Description Language (WSDL Web服务语言)是一个用于精确描述Web转载 2014-06-12 15:15:41 · 401 阅读 · 0 评论 -
Linux内核构造数据包并发送(Netfilter方式)
一、构造数据包简析 这里并不详细介绍如何在内核中构造数据包,下文如有需要会在适当的位置进行分析。这里简单的分析讲一下内核态基于Netfilter框架构造数据包的方式。 内核中可以用到的构造数据包的方式,个人认为可以分为两种。 其一,我们直接用alloc_skb申请一个skb结构体,然后根据实际的应用填充不同的成员,或者基于当前数据包的skb,调用skb_cop转载 2015-12-15 18:44:51 · 5729 阅读 · 0 评论 -
Linux IO及 select、poll、epoll详解
同步IO和异步IO,阻塞IO和非阻塞IO分别是什么,到底有什么区别?不同的人在不同的上下文下给出的答案是不同的。所以先限定一下本文的上下文。本文讨论的背景是Linux环境下的network IO。一 概念说明在进行解释之前,首先要说明几个概念:- 用户空间和内核空间- 进程切换- 进程的阻塞- 文件描述符- 缓存 I/O用户空间与内核空间现转载 2015-11-25 23:11:23 · 441 阅读 · 0 评论 -
select/poll
第一部分:Select(poll)分析背景我们编写驱动程序的时候,通常需要告诉上层应用程序设备的状态:是否可读写。 应用程序可以直接通过read/write系统调用(阻塞和非阻塞模式)进入内核态驱动程序,那么驱动程序的read/write至少需要支持阻塞和非阻塞模式的读写: 上层阻塞模式调用read时,如果设备驱动的read_buffer中没有数据可以供上层读取,就让该转载 2015-11-26 13:05:07 · 385 阅读 · 0 评论 -
select 和 epoll区别
select 模式低效是由select的定义所决定的,与操作系统实现无关,任何内核在实现select时必须做轮循,才能知道这些socket的情况,这是会消耗 cpu的。此外,当你拥有一个很大socket集的时候,尽管任一时间只有小部分的socket是"活跃"的,但每次你都不得不将所有的socket填入到一个FD_SET中,这也会消耗一些cpu,并且当select返回后,处理业务时你可能还需要做“上转载 2015-11-25 23:07:51 · 2635 阅读 · 0 评论 -
网络子系统在链路层的收发过程
1),Skb_buff/* To allow 64K frame to be packed as single skb without frag_list */#define MAX_SKB_FRAGS (65536/PAGE_SIZE + 2)typedef struct skb_frag_struct skb_frag_t;struct skb_frag_str转载 2015-09-16 22:23:14 · 442 阅读 · 0 评论 -
Netlink Protocol Library Suite (libnl)
SummaryThe libnl suite is a collection of libraries providing APIs to netlink protocol based Linux kernel interfaces.Netlink is a IPC mechanism primarly between the kernel and user space pro转载 2015-09-08 18:02:16 · 581 阅读 · 0 评论 -
linux 资源
linux内核源代码情景分析 非扫描版 上下册合订版 字清楚 带书签 1575页 pdfhttp://download.csdn.net/source/2002579*************************************************************linux设备驱动开发详解 pdf,针对ARM9 s3c2410 经典 宋宝华http://转载 2015-09-08 22:06:27 · 468 阅读 · 0 评论 -
基于socket的ftp实现
服务器端的实现:#include #include #include//sockaddr_in等结构的定义#include//addrinfo等结构的定义#include #include #include #include #include #include #include #define TRUE 1#define LISTEN_POR转载 2015-04-22 17:37:06 · 2405 阅读 · 0 评论 -
OSI七层模型介绍
OSI七层模型介绍 OSI是一个开放性的通行系统互连参考模型,他是一个定义的非常好的协议规范。OSI模型有7层结构,每层都可以有几个子层。下面我简单的介绍一下这7层及其功能。 OSI的7层从上到下分别是7 应用层6 表示层 5 会话层 4 传输层 3 网络层 2 数据链路层 1 物理层 其中高层,既7、6、5、4层定义了应转载 2014-10-10 18:02:55 · 736 阅读 · 0 评论 -
Linux的SOCKET编程详解
1. 网络中进程之间如何通信进 程通信的概念最初来源于单机系统。由于每个进程都在自己的地址范围内运行,为保证两个相互通信的进程之间既互不干扰又协调一致工作,操作系统为进程通信提供了相应设施,如UNIX BSD有:管道(pipe)、命名管道(named pipe)软中断信号(signal)UNIX system V有:消息(message)、共享存储区(shared memory转载 2014-11-11 22:47:31 · 383 阅读 · 0 评论 -
基于Socket的UDP和TCP编程介绍
一、概述TCP(传输控制协议)和UDP(用户数据报协议是网络体系结构TCP/IP模型中传输层一层中的两个不同的通信协议。TCP:传输控制协议,一种面向连接的协议,给用户进程提供可靠的全双工的字节流,TCP套接口是字节流套接口(stream socket)的一种。UDP:用户数据报协议。UDP是一种无连接协议。UDP套接口是数据报套接口(datagram socket)的一种转载 2014-08-18 17:36:20 · 456 阅读 · 0 评论 -
如何设置socket的Connect超时
DP: 生活的脚步,技术的点滴...如何设置socket的Connect超时1.首先将标志位设为Non-blocking模式,准备在非阻塞模式下调用connect函数2.调用connect,正常情况下,因为TCP三次握手需要一些时间;而非阻塞调用只要不能立即完成就会返回错误,所以这里会返回EINPROGRESS,表示在建立连接但还没有完成。3.在读套接口描述符集转载 2014-10-16 22:28:53 · 3411 阅读 · 0 评论