上一页 1 ··· 24 25 26 27 28 29 30 31 32 ··· 100 下一页

2013年7月22日

UNIX网络编程——基本TCP套接字编程

摘要: 一、基于TCP协议的网络程序下图是基于TCP协议的客户端/服务器程序的一般流程: 服务器调用socket()、bind()、listen()完成初始化后,调用accept()阻塞等待,处于... 阅读全文

posted @ 2013-07-22 14:19 胡永光 阅读(166) 评论(0) 推荐(0) 编辑

UNIX网络编程——socket概述和字节序、地址转换函数

摘要: 一、什么是socketsocket可以看成是用户进程与内核网络协议栈的编程接口。socket不仅可以用于本机的进程间通信,还可以用于网络上不同主机的进程间通信。socket API是一层抽象的网络编程接口,适用于各种底层网络协议,如IPv4、IPv6,以及以后要讲的UNIX Domain Sock... 阅读全文

posted @ 2013-07-22 13:29 胡永光 阅读(175) 评论(0) 推荐(0) 编辑

UNIX网络编程——TCP输出,UDP输出

摘要: TCP输出 每一个TCP套接字有一个发送缓冲区,我们可以使用SO_SNDBUF套接字选项来更改该缓冲区的大小。当某个应用进程调用write时,内核从该应用进程的缓冲区中复制所有数据到(或是应用程序的缓冲区大于套接字的发送缓冲区,或是套接字的发送缓冲区中已有其他数据),该应用进程将被投入睡眠... 阅读全文

posted @ 2013-07-22 12:30 胡永光 阅读(124) 评论(0) 推荐(0) 编辑

UNIX网络编程——分析一帧基于UDP的TFTP协议帧

摘要: 下图是UDP的段格式: 相比TCP段格式,UDP要简单得多,也没啥好说的,需要注意的是UDP数据长度指payload加上首部的长度。下面分析一帧基于UDP的TFTP协议帧:以太网首部0000: 00 05 5d 67 d0 b1 00 05 5d 61 58 a... 阅读全文

posted @ 2013-07-22 11:56 胡永光 阅读(94) 评论(0) 推荐(0) 编辑

UNIX网络编程——网络层:IP

摘要: 一、IP数据报格式 IP数据报格式如下: 版本:IP协议版本号,长度为4位,IPv4此字段值为4,IPv6此字段值为6 首部长度:以32位的字为单位,该字段长度为4位,最小值为5,即不带任何选项的IP首部20个字节... 阅读全文

posted @ 2013-07-22 11:37 胡永光 阅读(139) 评论(0) 推荐(0) 编辑

UNIX网络编程——TCP连接的建立和断开、滑动窗口

摘要: 一、TCP段格式: TCP的段格式如下图所示: 源端口号与目的端口号:源端口号和目的端口号,加上IP首部的源IP地址和目的IP地址唯一确定一个TCP连接。 序号:序号表示在这个报文段中的第一个数据字节序号。 ... 阅读全文

posted @ 2013-07-22 11:36 胡永光 阅读(137) 评论(0) 推荐(0) 编辑

UNIX网络编程——TCP/IP简介

摘要: 一、ISO/OSI参考模型 OSI(open system interconnection)开放系统互联模型是由ISO(International Organization for Standardization)国际标准化组织定义的网络分层模型,共七层,如下图: ... 阅读全文

posted @ 2013-07-22 11:28 胡永光 阅读(150) 评论(0) 推荐(0) 编辑

2013年7月19日

UNIX网络编程——网络数据包检测

摘要: 网络数据包检测数据包捕获(sniffer):是指在网络上进行数据收集的行为,需要通过网卡来完成。三种访问方式:BSD Packet Filter(BPF)SVR4 Datalink Provider Interface(DLPI)linux SOCK_PACKET interfacelibpcap... 阅读全文

posted @ 2013-07-19 15:10 胡永光 阅读(167) 评论(0) 推荐(0) 编辑

UNIX环境高级编程——TCP/IP网络编程

摘要: 常用网络信息检索函数gethostname()getpeername()getsockname()gethostbyname()gethostbyaddr()getprotobyname()getprotobynumber()getservbyname()getservbyport()网络属性设置... 阅读全文

posted @ 2013-07-19 15:02 胡永光 阅读(212) 评论(0) 推荐(0) 编辑

UNIX环境高级编程——网络编程常用函数及结构

摘要: IP地址的转换#include int inet_aton(const char *strptr, struct in_addr *addrptr);//将strptr字符串转换成32位的网络字节序(二进制值--a.b.c.d->32)。int_addr_t... 阅读全文

posted @ 2013-07-19 14:32 胡永光 阅读(180) 评论(0) 推荐(0) 编辑

上一页 1 ··· 24 25 26 27 28 29 30 31 32 ··· 100 下一页

导航