- 博客(44)
- 资源 (65)
- 收藏
- 关注
转载 UDP服务器端和客户端程序设计
一、实验目的学习和掌握Linux下的UDP服务器基本原理和基本编程方法,体会与TCP的区别,TCP编程:http://blog.csdn.net/yueguanghaidao/article/details/7035248二、实验平台ubuntu-8.04操作系统三、实验内容编写Linux下UDP服务器套接字程序,服务器接收客户端发送的信息并显示,同时显示客户的IP地址、端口号
2015-04-27 14:09:44 710
转载 多线程并发服务器编程
多线程并发服务器编程一、实验目的理解线程的创建和终止方法;学会编写基本的多线程并发服务器程序和客户程序;理解多线程与多进程的区别。二、实验平台ubuntu-8.04操作系统三、实验内容编写多线程并发服务器程序和客户程序,具体功能如下:1、服务器等待接收客户的连接请求,一旦连接成功则显示客户地址,接着接收客户端的名称并显示;然后接收来自该客户的字符串,每当收到
2015-04-27 14:07:08 1239
转载 多进程并发服务器编程
多进程并发服务器编程一、实验目的理解进程的创建和终止方法;熟悉父进程与子进程对描述符的操作过程;学会编写基本的多进程并发服务器程序和客户程序。二、实验平台ubuntu-8.04操作系统三、实验内容编写多进程并发服务器程序和客户程序,具体功能如下:1、服务器等待接收客户的连接请求,一旦连接成功则显示客户地址,接着接收客户端的名称并显示;然后接收来自该客户的字符
2015-04-27 14:06:42 1178
转载 I/O多路复用服务器编程
一、实验目的理解I/O多路复用技术的原理。学会编写基本的单线程并发服务器程序和客户程序。二、实验平台ubuntu-8.04操作系统三、实验内容采用I/O多路复用技术实现单线程并发服务器,完成使用一个线程处理并发客户请求的功能。四、实验原理除了可以采用多进程和多线程方法实现并发服务器之外,还可以采用I/O多路复用技术。通过该技术,系统内核缓冲I/O数据,当某个I/O准
2015-04-27 14:06:18 1117
转载 服务器并发处理架构
网络服务器如何处理并发请求的模型称之为多任务体系结构。 1.Inetd模式:在大部分Unix操作系统中,默认的多任务体系结构是Inetd应用程序。通用的网络服务器体系结构Inetd分为两个部分:主服务进程和客户服务进程。主服务进程通常用于等待客户端的连接请求。一旦客户端发起一个请求,主服务器将建立连接,同时调用fork创建一个新的客户服务进程,并由客户服务进程处理客户端的请求,而主服务进程
2015-04-27 13:34:49 1069
转载 wlanconfig
~ # wlanconfig usage: wlanconfig athX create wlandev wifiX wlanmode [sta|adhoc|ap|monitor|p2pgo|p2pcli|p2pdev] [bssid | -bssid] [nosbeacon]usage: wlanconfig athX destroyusage: wlanc
2015-04-24 16:58:04 6299 1
转载 LinuxC下获取UDP包中的路由目的IP地址和头标识目的地址
LinuxC下获取UDP包中的路由目的IP地址和头标识目的地址在接受到UDP包后,有时候我们需要根据所接收到得UDP包,获取它的路由目的IP地址和头标识目的地址。(一)主要的步骤:在setsockopt中设置IP_PKTINFO,然后通过recvmsg来获取struct in_pktinfo(struct in_pktinfo是struct msghdr中msg_control
2015-04-23 09:31:56 3137
转载 DNS报文格式
DNS报文格式(借个图贴过来): 说明一下:并不是所有DNS报文都有以上各个部分的。图中标示的“12字节”为DNS首部,这部分肯定都会有,首部下面的是正文部分,其中查询问题部分也都会有。除此之外,回答、授权和额外信息部分是只出现在DNS应答报文中的,而这三部分又都采用资源记录(Recource Record)的相同格式,这个稍后会提到。下面逐个字段地分析DNS报文。
2015-04-22 11:29:40 1020
转载 iptables规则链执行顺序
预备知识(转): iptable有三种队列(表)规则,mangle queue, filter queue, nat queue。1。The first is the mangle table which is responsible for the alteration of quality of service bits in the TCP header.2。The second
2015-04-21 10:03:11 2717
转载 iptables raw表
1) 什么是raw表?做什么用的?iptables有5个链:PREROUTING,INPUT,FORWARD,OUTPUT,POSTROUTING,4个表:filter,nat,mangle,raw.4个表的优先级由高到低的顺序为:raw-->mangle-->nat-->filter举例来说:如果PRROUTING链上,即有mangle表,也有nat表,那么先由mang
2015-04-20 16:16:32 1780
转载 AF_INET和PF_INET的细微不同
文章出处:http://hi.baidu.com/%B1%D5%C4%BF%B3%C9%B7%F0/blog/item/deddb9ef51222e4578f0551d.html 在写网络程序的时候,建立TCP socket: sock = socket(PF_INET, SOCK_STREAM, 0); 然后再绑定本地地址或连接远程地址时需要初始化sockaddr_
2015-04-20 10:59:55 5230
转载 iptables DNAT详解
文章出处:http://hi.baidu.com/allenspace/blog/item/cbba05f3b41c5dcb0b46e0ef.html/cmtid/4259a264aa35ecfcf636545f DNAT target 这个target是用来做目的网络地址转换的,就是重写包的目的IP地址。如果一个包被匹配了,那么和它属于同一个流的所有的包都会被自动转换,然后就可
2015-04-20 10:58:19 2130
转载 iptables中DNAT与SNAT的理解
文章出处:http://blog.myhnet.cn/2009/01/12/my-understanding-about-dnat-and-snat-in-iptables/ DNAT(Destination Network Address Translation, 目的地址转换)通常被叫做目的映射。而SNAT(Source Network Address Translation, 源地
2015-04-20 10:57:52 1710
转载 linux一些常用iptables防火墙规则整理收集
这里是一个朋友在使用linux系统时的一些常用到的iptables防火墙规则整理了一篇文章,下面我转过来作记录的同时也给各位同学参考参考。安装iptables防火墙如果没有安装iptables需要先安装,CentOS执行:yum install iptablesDebian/Ubuntu执行:apt-get install iptables清除已有iptable
2015-04-20 08:57:52 2085
转载 Linux安全性和netfilter/iptables介绍
Linux安全性和netfilter/iptables2010-12-07 09:51 Mugdha Vairagade IBM 字号:T |Tnetfilter/iptables 是与最新的 2.4.x 版本 Linux 内核集成的 IP 信息包过滤系统。如果 Linux 系统连接到因特网或 LAN、服务器或连接 LAN 和因特网的代理服务器,则该系统有利于在 Lin
2015-04-20 08:50:32 633
转载 iptables指南删减版
1. 序言1.1. 为什么要写这个指南我发现目前所有的HOWTO都缺乏Linux 2.4.x 内核中的Iptables和Netfilter 函数的信息,于是我试图回 答一些问题,比如状态匹配。我会用插图和例子 rc.firewall.txt 加以说明,此处的例子可以在你的/etc/rc.d/使用。最初这篇文章是以HOWTO文 档的形式书写的,因为许多人只接受HOWTO文档。还有
2015-04-18 22:39:51 2224
转载 《linux iptables使用入门》(转载)
《linux iptables使用入门》(转载)1)iptables的概述.netfilter/iptables是在linux 2.4及后继版本的内核中集成的一种服务..netfilter/iptables工作在OSI七层模型的2,3层..netfilter/iptables由netfilter组件和iptables组件构成,其中netfilter组件集成在内核的一部分,由一些
2015-04-18 15:26:42 1366
转载 iptables 的mangle表
mangle表的主要功能是根据规则修改数据包的一些标志位,以便其他规则或程序可以利用这种标志对数据包进行过滤或策略路由。 内网的客户机通过Linux主机连入Internet,而Linux主机与Internet连接时有两条线路,它们的网关如图所示。现要求对内网进行策略路由,所有通过TCP协议访问80端口的数据包都从ChinaNet线路出去,而所有访问UDP协议53号端口的数据包都从Cerne
2015-04-18 15:18:44 32708 3
转载 本机ip、127.0.0.1和0.0.0.0区别
本机ip、127.0.0.1和0.0.0.0区别 网络javaIP地址的记法:IP地址由四个字节构成,为了方便阅读和书写,每个字节用0-255的数字表示,字节之间用’.'分割,如:10.10.152.235有时候我们会看到这样的IP:10.10.152.235/24,后面的/24表示子网掩码,24表示子网掩码上有24个1,等价于255.255.255.0 。IP
2015-04-18 13:07:42 1576
转载 FastCGI编程介绍
CGI(Common Gateway Interface)公共网关接口,是HTTP服务器与其他程序通信的工具。FastCGI是一个long-live型的CGI,支持分布式计算,它将CGI解释器进程保持在内存中并因此获得较高的性能。FastCGI工作方式是接受Web服务器的请求,以HTTP Request的方式进行响应,实现了应用程序与Web服务器的分离。它的使用需要在Web服务器中安装支持组件
2015-04-17 17:26:42 6261
转载 lighttpd 配置文件
原文地址:lighttpd 配置文件 作者:bfz814/etc/lighttpd/lighttpd.conf为 Lighttpd 服务器的配置文件## 网站根目录 映射在机器上的物理路径server.document-root = "/home/lighttpd/html/"## 如果网站目录中出现以下文件名,不用指定文件名便可直接访问index-file.
2015-04-17 16:35:30 2020
转载 说说lighttpd的fastcgi
【简介】 lighttpd提供了一种外部程序调用的接口,即FastCGI接口。这是一种独立于平台和服务器的接口,它介于Web应用程序和Web服务器之间。关于FastCGI接口的具体内容可以在其官网上找到。FastCGI logo 这就意味着能够在Apache服务器上运行的FastCGI程序,也一定可以无缝的在lighttpd上使用。 【FastCGI广告时
2015-04-17 16:34:30 3726
转载 Linux网络编程:原始套接字的魔力【续】
如何从链路层直接发送数据帧 本来以为这部分都弄完了,结果有朋友反映说看了半天还是没看到如何从链路层直接发送数据。因为上一篇里面提到的是从链路层“收发”数据,结果只“收”完,忘了“发”,实在抱歉,所以就有这篇续出来了。 上一节我们主要研究了如何从链路层直接接收数据帧,可以通过bind函数来将原始套接字绑定到本地一个接口上,然后该套接字就只接收从该接口收上来的对应的数据
2015-04-10 16:23:29 448
转载 Linux网络编程:原始套接字的魔力【下】
可以接收链路层MAC帧的原始套接字 前面我们介绍过了通过原始套接字socket(AF_INET, SOCK_RAW, protocol)我们可以直接实现自行构造整个IP报文,然后对其收发。提醒一点,在用这种方式构造原始IP报文时,第三个参数protocol不能用IPPROTO_IP,这样会让系统疑惑,不知道该用什么协议来伺候你了。 今天我们介绍原始套接字的另一种用法
2015-04-10 16:22:36 580
转载 Linux网络编程:原始套接字的魔力【上】
基于原始套接字编程 在开发面向连接的TCP和面向无连接的UDP程序时,我们所关心的核心问题在于数据收发层面,数据的传输特性由TCP或UDP来保证: 也就是说,对于TCP或UDP的程序开发,焦点在Data字段,我们没法直接对TCP或UDP头部字段进行赤裸裸的修改,当然还有IP头。换句话说,我们对它们头部操作的空间非常受限,只能使用它们已经开放给我们的诸如源、目的I
2015-04-10 16:21:39 614
转载 揭开网络编程常见API的面纱【下】
Linux网络编程数据收发的API流程分析 只要把数据在协议栈中的流动线路和脉络弄清楚了,关于协议栈的实现部分,理解起来就轻松多了。在网络编程章节的数据接收过程中,我们主要介绍过read()、recv()、recvfrom()还有一个recvmsg()没介绍到,今天我们就来看一下这几个API函数到底有什么差别。数据接收 在接收数据的过程,主要分两个阶段:
2015-04-10 16:19:27 532
转载 揭开网络编程常见API的面纱【上】
Linux网络编程API函数初步剖析 今天我们来分析一下前几篇博文中提到的网络编程中几个核心的API,探究一下当我们调用每个API时,内核中具体做了哪些准备和初始化工作。 1、socket(family,type,protocol) 当我们在开发网络应用程序时,使用该系统调用来创建一个套接字。该API所做的工作如下所示: 该系
2015-04-10 16:18:55 536
转载 用户空间和内核空间通讯之【Netlink 下】
关于Netlink多播机制的用法 在上一篇博文中我们所遇到的情况都是用户空间作为消息进程的发起者,Netlink还支持内核作为消息的发送方的情况。这一般用于内核主动向用户空间报告一些内核状态,例如我们在用户空间看到的USB的热插拔事件的通告就是这样的应用。 先说一下我们的目标,内核线程每个一秒钟往一个多播组里发送一条消息,然后用户空间所以加入了该组的进程都会收到这
2015-04-10 16:17:42 585
转载 用户空间和内核空间通讯之【Netlink 中】
今天我们来动手演练一下Netlink的用法,看看它到底是如何实现用户-内核空间的数据通信的。我们依旧是在2.6.21的内核环境下进行开发。 在文件里包含了Netlink协议簇已经定义好的一些预定义协议:点击(此处)折叠或打开#define NETLINK_ROUTE 0 /* Routing/device hook
2015-04-10 16:16:57 671
转载 用户空间和内核空间通讯之【Netlink 上】
引言 Alan Cox在内核1.3版本的开发阶段最先引入了Netlink,刚开始时Netlink是以字符驱动接口的方式提供内核与用户空间的双向数据通信;随后,在2.1内核开发过程中,Alexey Kuznetsov将Netlink改写成一个更加灵活、且易于扩展的基于消息通信接口,并将其应用到高级路由子系统的基础框架里。自那时起,Netlink就成了Linux内核子系统和用户态的
2015-04-10 16:15:41 525
转载 PF_NETLINK应用实例NETLINK_KOBJECT_UEVENT具体实现--udev实现原理
原文地址:http://www.cnblogs.com/hoys/archive/2011/04/09/2010759.html相对于linux来说,udev还是一个新事物。然而,尽管它03年才出现,尽管它很低调(J),但它无疑已经成为linux下不可或缺的组件了。udev是什么?它是如何实现的?最近研究Linux设备管理时,花了一些时间去研究udev的实现。 udev是什么
2015-04-10 14:36:00 552
转载 linux 内核与用户空间通信之netlink使用方法
Linux中的进程间通信机制源自于Unix平台上的进程通信机制。Unix的两大分支AT&T Unix和BSD Unix在进程通信实现机制上的各有所不同,前者形成了运行在单个计算机上的System V IPC,后者则实现了基于socket的进程间通信机制。同时Linux也遵循IEEE制定的Posix IPC标准,在三者的基础之上实现了以下几种主要的IPC机制:管道(Pipe)及命名管道(Named
2015-04-10 14:35:16 650
转载 HTTP协议头字段及分析
http头的组成:============== HTTP头字段包括4类: general-header ; request-header ; response-header ; entity-header . ***********************************************************
2015-04-10 09:26:09 773
转载 图解https协议
我们都知道HTTPS能够加密信息,以免敏感信息被第三方获取。所以很多银行网站或电子邮箱等等安全级别较高的服务都会采用HTTPS协议。 HTTPS简介 HTTPS其实是有两部分组成:HTTP + SSL / TLS,也就是在HTTP上又加了一层处理加密信息的模块。服务端和客户端的信息传输都会通过TLS进行加密,所以传输的数据都是加密后的数据。具体是如何进行加密,解密,验证的,且看下图。
2015-04-09 15:11:39 496
转载 SSL协议详解
背景介绍 最近在看《密码学与网络安全》相关的书籍,这篇文章主要详细介绍一下著名的网络安全协议SSL。 在开始SSl介绍之前,先给大家介绍几个密码学的概念和相关的知识。 1、密码学的相关概念密码学(cryptography):目的是通过将信息编码使其不可读,从而达到安全性。明文(plain text):发送人、接受人和任何访问消息的人都能理解的消息。密文(cipher
2015-04-09 15:03:51 585
转载 struct tcphdr详解
sk_buff->tcphdr/usr/src/linux-2.6.19/include/linux/tcp.hstruct tcphdr { __be16 source; __be16 dest; __be32 seq; __be32 ack_seq;#if defined(__LITTLE_ENDIAN_BITFIELD)
2015-04-09 10:41:23 2108
转载 struct iphdr详解
/usr/src/linux-2.6.19/include/linux/ip.hstruct iphdr {#if defined(__LITTLE_ENDIAN_BITFIELD) __u8 ihl:4, version:4;#elif defined (__BIG_ENDIAN_BITFIELD) __u8 versio
2015-04-09 10:39:09 1268
转载 自己动手学TCP/IP–http协议(http报文格式)
HTTP请求报文http请求数据包的格式:头部(request line + header)+ 数据(data)头部和数据包体通过一个空行来隔开,头部的格式主要包括请求行+请求头部。如下图请求行请求行由请求方法字段、URL字段和HTTP协议版本字段3个字段组成,它们用空格分隔如:GET /index.html HTTP/1.1。HTTP协议
2015-04-09 10:23:15 5481
转载 深入理解HTTP协议
1. 基础概念篇1.1 介绍 HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写。它的发展是万维网协会(World Wide Web Consortium)和Internet工作小组IETF(Internet Engineering Task Force)合作的结果,(他们)最终发布了一系列的RFC,RFC 1945定义了HTTP/1.0版本。其中
2015-04-09 09:32:38 706
转载 MIME详解
MIME,英文全称为“Multipurpose Internet Mail Extensions”,即多用途互联网邮件扩展,是目前互联网电子邮件普遍遵循的邮件技术规范。在MIME出现之前,互联网电子邮件主要遵循由RFC 822所制定的标准,电子邮件一般只用来传递基本的ASCII码文本信息,MIME在 RFC 822的基础上对电子邮件规范做了大量的扩展,引入了新的格式规范和编码方式,在MIME的
2015-04-09 09:23:05 1159
sed awk讲解资料全集
2015-06-11
精通UNIX Shell脚本编程 第二版 免费 包含脚本文件
2015-06-11
netcat-0.7.1.tar.gz
2014-09-04
GitHubSetup
2014-08-31
80211r的无线局域网漫游技术的研究与实现
2018-07-01
Linux内核精髓-精通Linux内核必会的75个绝技 完整版
2017-03-19
TCP IP详解卷1:协议 原书第2版 压缩二
2017-03-19
Linux设备驱动开发详解:基于最新的Linux 4.0内核 高清完整.pdf版下载
2017-03-12
windows-use-vim-ctags-and-git
2016-08-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人