随笔分类 - TCP/IP
摘要:HTTP URL的格式如下: http://host[“:”post][abs_path]其中http表示要通过HTTP协议来定位网络资源。host表示合法的Internet主机域名或IP地址(以点分十进制的格式表示)。port用于指定一个端口号,拥有被请求资源的服务器主机监听该端口的TCP连接,如果port是空,或者没有给出,则使用缺省的端口80。abs_path指定请求资源的URI(Uniform Resource Identifier,统一资源标识符),如果URL中没有给出abs_path,那么当它作为请求URI时,必须以“/”的形式给出。通常,这个工作浏览器就帮我们完成了。我们在浏览器
阅读全文
摘要:(转载)http://zh.wikipedia.org/wiki/%E5%9B%A0%E7%89%B9%E7%BD%91%E7%BB%84%E7%AE%A1%E7%90%86%E5%8D%8F%E8%AE%AE
阅读全文
摘要:(转载)http://blog.csdn.net/eagle51998/article/details/3720521 URL(Uniform Resoure Locator:统一资源定位器)是WWW页的地址,它从左到右由下述部分组成: ·Internet资源类型(scheme):指出WWW客户程序用来操作的工具。如“http://”表示WWW服务器,“ftp://”表示FTP服务器,“gopher://”表示Gopher服务器,而“new:”表示Newgroup新闻组。 ·服务器地址(host):指出WWW页所在的服务器域名。 ·端口(port):有时(并非总是
阅读全文
摘要:(转载)http://blog.csdn.net/zhll3377/article/details/7748086引用学习Web开发不好好学习HTTP报文,将会“打拳不练功,到老一场空”,你花在犯迷糊上的时间比你沉下心来学习HTTP的时间肯定会多很多。HTTP请求报文解剖HTTP请求报文由3部分组成(请求行+请求头+请求体):下面是一个实际的请求报文:①是请求方法,GET和POST是最常见的HTTP方法,除此以外还包括DELETE、HEAD、OPTIONS、PUT、TRACE。不过,当前的大多数浏览器只支持GET和POST,Spring 3.0提供了一个HiddenHttpMethodFilt
阅读全文
摘要:(转载自百度文库)HTTP错误代码HTTP 错误 400: ->400 请求出错 由于语法格式有误,服务器无法理解此请求。不作修改,客户程序就无法重复此请求。HTTP 错误 401: ->401.1 未授权:登录失败 此错误表明传输给服务器的证书与登录服务器所需的证书不匹配。 ->401.2 未授权:服务器的配置导致登录失败 此错误表明传输给服务器的证书与登录服务器所需的证书不匹配。此错误通常由未 发送正确的 WWW 验证表头字段所致。 ->401.3 未授权:由于资源中的 ACL 而未授权 此错误表明客户所传输的证书没有对服务器中特定资源的访问权限。此资源可能是 客户
阅读全文
摘要:(转载)http://blog.sina.com.cn/s/blog_4fc68b7f0100g5r0.html一个是数据端口,一个是控制端口,控制端口一般为21,而数据端口不一定是20,这和FTP的应用模式有关,如果是主动模式,应该为20,如果为被动模式,由服务器端和客户端协商而定FTP Port模式和FTP Passive模式 当你对一个FTP问题进行排错时候,你首先要问的一个问题是使用的是port模式的还是passive 模式。因为这两种行为迥异,所以这两种模式引起的问题也不同;在过去,客户端缺省为active(port)模式;近来,由于Port模式的安全问题,许多客户端的FTP应用缺.
阅读全文
摘要:(转载自百度文库)1、端口:7服务:Echo说明:能看到许多人搜索Fraggle放大器时,发送到X.X.X.0和X.X.X.255的信息。2、端口:21服务:FTP说明:FTP服务器所开放的端口,用于上传、下载。最常见的攻击者用于寻找打开anonymous的FTP服务器的方法。这些服务器带有可读写的目录。木马Doly Trojan、Fore、Invisible FTP、WebEx、WinCrash和Blade Runner所开放的端口。3、端口:22服务:Ssh ae建立的TCP和这一端口的连接可能是为了寻找ssh。这一服务有许多弱点,如果配置成特定的模式,许多使用RSAREF库的版本就会有不
阅读全文
摘要:(转载)http://blog.csdn.net/sparkliang/article/details/4957744libevent源码深度剖析二——Reactor模式张亮前面讲到,整个libevent本身就是一个Reactor,因此本节将专门对Reactor模式进行必要的介绍,并列出libevnet中的几个重要组件和Reactor的对应关系,在后面的章节中可能还会提到本节介绍的基本概念。1 Reactor的事件处理机制首先来回想一下普通函数调用的机制:程序调用某函数?函数执行,程序等待?函数将结果和控制权返回给程序?程序继续处理。Reactor释义“反应堆”,是一种事件驱动机制。和普通函数
阅读全文
摘要:(转载)http://bachmozart.iteye.com/blog/344172目前网上关于memcached的分析主要是内存管理部分,下面对memcached的线程模型做下简单分析 有不对的地方还请大家指正,对memcahced和libevent不熟悉的请先google之 先看下memcahced启动时线程处理的流程 memcached的多线程主要是通过实例化多个libevent实现的,分别是一个主线程和n个workers线程 无论是主线程还是workers线程全部通过libevent管理网络事件,实际上每个线程都是一个单独的libevent实例 主线程负责监听客户端的建立连接请求,以
阅读全文
摘要:(1)gethostname()、sethostname()函数,获取/设置本地主机的标准主机名int main (int argc, char *argv[]){ char buf[50]; if (gethostname(buf, sizeof(buf)) == 0) { printf("%s\n", buf); } else { perror("gethostname"); } return 0;}程序输出:[root@localhost ~]# ./a.out localhost.loc...
阅读全文
摘要:(转载)http://blog.csdn.net/chang6520/article/details/7965752Linux下inet_pton和inet_ntop这2个IP地址转换函数,可以在将IP地址在“点分十进制”和“整数”之间转换。而且,这2个函数能够处理ipv4和ipv6,算是比较新的函数了。(1)inet_pton函数原型如下将“点分十进制”转化为“整数” #include <sys/types.h> #include <sys/socket.h> #include <arpa/inet.h> int inet_pton(int af, con
阅读全文
摘要:(转载)http://hi.baidu.com/qkjzsjqsehailte/item/70cb35469878a416886d106b“dereferencing pointer to incomplete type”是什么错误?I use gcc to compile my C file.dereferencing pointer to incomplete type是什么错误?-->你的指针,有一个类型,这个类型是不完全的。也就是说,你只给出了这个类型的声明,没有给出其定义。你这里的类型多半是结构,联合之类的东西。把代码贴上来。dereferencing pointer to i
阅读全文
摘要:(转载)http://www.cnblogs.com/hnrainll/archive/2011/04/24/2026432.html在linux环境下,结构体struct sockaddr在/usr/include/linux/socket.h中定义,具体如下:typedef unsigned short sa_family_t;struct sockaddr { sa_family_t sa_family; /* address family, AF_xxx */ char sa_data[14]; /* 14 bytes of protocol address */在linux环境下,结
阅读全文
摘要:(转载)http://blog.etina.net/2010/09/27/struct-sockaddr_in-struct-sockaddr%EF%BC%8Cstruct-in_addr.html一、结构体 struct sockaddr_in, struct sockaddr, struct in_addrstruct sockaddr_in, struct sockaddr,struct in_addr,这是网络编程中常用的结构体,每次都记不住它们各自的成员是啥,需要临时查,为方便以后的查看,在这里总结下。struct sockaddr { unsigned short sa_fami.
阅读全文
摘要:(转载)http://www.cnblogs.com/duzouzhe/archive/2009/06/19/1506699.html(一)Linux网络编程--网络知识介绍Linux网络编程--网络知识介绍客户端和服务端 网络程序和普通的程序有一个最大的区别是网络程序是由两个部分组成的--客户端和服务器端. 客户端 在网络程序中,如果一个程序主动和外面的程序通信,那么我们把这个程序称为客户端程序。 比如我们使用ftp程序从另外一 个地方获取文件的时候,是我们的ftp程序主动同外面进行通信(获取文件), 所以这个地方我们的ftp程序就是客户端程序。 服务端 和客户端相对应的程序即为服务端程序.
阅读全文
摘要:索引:1.字节序函数2.字节操作函数3.地址转换函数4.readn、writen和readline5.测试描述符类型6.socket函数7.connect函数8.bind函数9.listen函数10.accept函数11.close函数12.getsockname和getpeername13.select函数14.shutdown函数15.pselect函数16.poll函数17.getsockopt和setsockopt18.套接口选项列表19.处理套接口的fcntl函数20.gethostbyname函数21.gethostbyname2函数22.ethostbyaddr函数23.unam
阅读全文
摘要:(转载)http://www.cnblogs.com/observer/archive/2011/11/04/2235219.htmlWireshark图解教程(简介、抓包、过滤器)http://openmaniak.com/cn/wireshark.php Wireshark是世界上最流行的网络分析工具。这个强大的工具可以捕捉网络中的数据,并为用户提供关于网络和上层协议的各种信息。与很多其他网络工具一样,Wireshark也使用pcap network library来进行封包捕捉。wireshark的原名是Ethereal,新名字是2006年起用的。当时Ethereal的主要开发者决定离开
阅读全文
摘要:Netstat命令用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。 在Internet RFC标准中,Netstat的定义是: Netstat是在内核中访问网络及相关信息的程序,它能提供TCP连接,TCP和UDP监听,进程内存管理的相关报告。检查2222 端口的相关信息:[root@singledb ~]# netstat -an |grep 2222tcp 0 0 :::2222 :::* LISTEN tcp ...
阅读全文
摘要:(转载)http://www.cnblogs.com/ggjucheng/archive/2012/01/08/2316661.html简介Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。输出信息含义执行netstat后,其输出结果为Active Internet connections (w/o servers)Proto Recv-Q Send-Q Local Address Foreign Address Statetcp
阅读全文
摘要:(转载)http://yu.you163.blog.163.com/blog/static/33987774201302125314154/在网络程序的调试过程中,经常发生一些出乎意料的事情,比如创建一个TCP服务失败,这时候往往需要查看系统的网络情况,最常用的网络抓包当然非WireShark模式。但往往很多时候只需要查看某个端口的使用情况,它到底被那个进程(对应PID)占用了,或者你还需要把它Kill掉。如果你在Windows操作系统,你可以使用netstat命令来查询PID,然后可以打开任务管理器,查看这个PID对应的进程名;如果PID没有显示,菜单》查看》选择列》选中PID即可;得知进程
阅读全文