unix linux网络编程摘要

unix linux网络编程摘要

Unix Socket编程 [From] http://www.mianfeiwendang.com/a4/b7/20010626/150001679.html

.Socket

Socket是TCP/IP网络的API, 可以用它来开发网络应用程序

Socket数据传输是一种特殊的I/O, Socket也是一种文件描述符

.Socket的建立

int socket(int domain, int type, int protocol)

函数返回:

一个整型的Socket描述符, 可以在后面调用它

参数说明:

int domain 指明所使用的协议族, 通常是PF_INET, 表示网络(TCP/IP)协议族 说明我们网络程序所在的主机采用的通讯协族(AF_UNIX和AF_INET等). AF_UNIX : 只能够用于单一的Unix系统进程间通信,

AF_INET : 是针对Internet的,因而可以允许在远程主机之间通信

(当我们man socket时发现domain可选项是 PF_*而不是AF_*,因为glibc是posix的实现所以用PF代替了AF,不过我们都可以使用的)

int type 指定socket的类型, 通常是 SOCK_STREAM 流式Socket这样会提供按顺序的,可靠,双向,面向连接的比特流和SOCK_DGRAM数据报式Socket这样只会提供定长的,不可靠,无连接的通信

int prottocol 通常为0 由于我们指定了type,所以这个地方我们一般只要用0来代替就可以了

应用示例:

int sockfd = socket(PF_INET, SOCK_STREAM, 0);

.Socket配置

Socket描述符是一个指向内部数据结构的指针,它指向描述符表入口。调用Socket函数时, socket执行体将建立一个Socket,实际上"建立一个Socket"意味着为一个Socket数据结构分配存储空间。

Socket执行体为你管理描述符表。

两个网络程序之间的一个网络连接包括五种信息:通信协议、本地协议地址、本地主机端口、远端 主机地址和远端协议端口。Socket数据结构中包含这五种信息。

通过socket调用返回一个socket描述符后,在使用socket进行网络传输以前,必须配置该socket:

Word文档免费下载Word文档免费下载:unix linux网络编程摘要 (共34页,当前第1页)

你可能喜欢

  • 编程指南
  • Linux网络编程
  • Linux系统命令使用详解
  • 编程实例
  • socket网络编程
  • socket编程
  • 套接字编程

unix linux网络编程摘要相关文档

最新文档

返回顶部