UNIX网络编程-基本API介绍(二)】的更多相关文章

参考链接:http://www.cnblogs.com/riky/archive/2006/11/24/570713.aspx 1.getsockname和getpeername getsockname函数获取与套接口关联的本地协议地址. getpeername函数获取与套接口关联的远程协议地址. ---------------------------------------------------------------------- #include <sys/socket.h> int …
1.基本结构 大多数套接口函数都需要一个指向套接口地址结构的指针作为参数.每个协议族都定义它自己的套接口地址结构.这些结构的名字均以“sockaddr_”开头,并以对应每个协议族的唯一后缀结束. 1.1 IPv4套接口地址结构 也称为“网际套接口地址结构”,以“sockaddr_in”命名,在头文件<netinet/in.h>中. struct in_addr { in_addr_t s_addr; //32为IP地址 }; struct sockaddr_in { uint8 sin_len…
在socket系统调用中,如何完成三次握手和四次挥手: SOCK_DGRAM即UDP中的connect操作知识在内核中注册对方机器的IP和PORT信息,并没有建立连接的过程,即没有发包,close也不发包). 而SOCK_STREAM对应如下: connect会完成TCP的三次握手,客户端调用connect后,由内核中的TCP协议完成TCP的三次握手: close操作会完成四次挥手. 三次握手对应的Berkeley Socket API: 可以看出和连接建立相关的API有:connect, li…
原文: http://cstdlib.com/tech/2014/10/09/read-unix-network-programming-1/ 文章写的很清楚, 适合初学者 最近看了<UNIX网络编程 卷1:套接字联网API>, 英文名叫Unix Network Programming啦,后来上网查了查, 一般都叫UNP逼格会高一点, 就像APUE一样. 他们的作者都是W. Richard Stevens. 另外,他也是TCP/IP Illustrated的作者. 靠,看完作者简介,简直崇拜得…
UNIX网络编程--卷一:套接字联网API 本书面对的读者是那些希望自己编写的程序能够使用成为套接字(socket)的API进行彼此通信的人. 目录: 0.准备环境 1.简介 2.传输层:TCP.UDP和SCTP 3.套接字编程简介 4.基本TCP套接字编程 5.TCP客户/服务器程序例子 6.I/O复用:select和poll函数 7.套接字选项 8.基本UDP套接字编程 9.基本SCTP套接字编程 10.SCTP客户/服务器程序例子 11.名字与地址转换 12.IPV4与IPV6互操作性 1…
UNIX网络编程----传输层:TCP.UDP.SCTP 一.概述 本章的焦点是传输层:包括TCP.UDP.和SCTP(流控制传输协议).SCTP是一个较新的协议,最初设计用于跨因特网传输电话信令. UDP是一个简单的.不可靠的数据报协议.TCP是一个复杂.可靠的字节流协议.SCTP与TCP类似之处在于它也是一个可靠的数据报协议,但它还提供消息边界.传输级别多宿支持以及将头端阻塞减少到最小的一种方法.需要关注的几点:TCP的三路握手.TCP的链接终止序列和TCP的TIME_WAIT状态,SCTP…
这篇是计算机类的优质预售推荐>>>><UNIX网络编程 卷2:进程间通信(第2版)> UNIX和网络专家W. Richard Stevens的传世之作 编辑推荐 两卷本的<UNIX网络编程>是已故著名技术作家W. Richard Stevens的传世之作.卷2着重讨论怎样让应用程序与在其它机器上的应用程序进行对话. 良好的进程间通信(IPC)机制是提高UNIX程序性能的关键. 本书全面深入地解说了各种进程间通信形式,包括消息传递.同步.共享内存及远程过程调用…
UNIX网络编程---简介 一.           概述 a)       在编写与计算机通信的程序时,首先要确定的就是和计算机通信的协议,从高层次来确定通信由哪个程序发起以及响应在合适产生.大多数网络应用按照划分成客户和服务器来组织.在设计网络应用时,确定总是由客户发起请求往往能够简化协议和程序本身.当然一个较为复杂的网络应用还需要异步回调通信,也就是由服务器向客户发起请求消息. i.             在本书原著上多次提到客户(client)和服务器(server)这两个术语.但是他…
  问题聚焦:     这节介绍的不仅是网络编程的几个API     更重要的是,探讨了Linux网络编程基础API与内核中TCP/IP协议族之间的关系.     这节主要介绍三个方面的内容:套接字(socket地址)API,socket基础API,和网络信息API. 套接字API 套接字socket:(ip, port),即IP地址和端口对,唯一地表示了使用该TCP通信的一端. 需要了解:主机字节序和网络字节序. 原因:考虑32位的机器,CPU的累加器一次装载4字节的内容.那么这4字节在内存中…
问题聚焦:     这节介绍的不仅是网络编程的几个API     更重要的是,探讨了Linux网络编程基础API与内核中TCP/IP协议族之间的关系.     这节主要介绍三个方面的内容:套接字(socket地址)API,socket基础API,和网络信息API. 套接字API 套接字socket:(ip, port),即IP地址和端口对,唯一地表示了使用该TCP通信的一端. 需要了解:主机字节序和网络字节序. 原因:考虑32位的机器,CPU的累加器一次装载4字节的内容.那么这4字节在内存中的顺…