2. Socket API概述 - C++NP(ACE)
2009-03-11 17:34
344 查看
2. Socket API概述 - C++NP(ACE)
2008-12-07 13:502.1 操作系统IPC机制概述
网络应用程序需要使用"进程间通信(IPC)"机制. OS提供的IPC机制分为以下两种:
本地IPC: 如共享内存. 管道. "UNIX领域"socket. 门(door). 信号(signal)等.
只允许"位于同一计算机"上的实体之间通信.
远程IPC: 如"Internet领域"socket. X.25电路. Win32命名管道.
允许"分布在一个网络上"的实体之间通信.
2.2 Socket API
可以分为以下5类:
1) 本地环境管理
socket() bind() getsockname() getpeername() close()
2) 建立和终止连接
connect() listen() accept() shutdown()
3) 数据传输
send() recv() sendto() recvfrom()
4) 选项管理
setsockopt() getsockopt()
5) 网络地址
gethostbyname() gethostbyaddr() getipnodebyname() getipnodebyaddr()
getservbyname()
一个通信领域由一个"协议簇"和一个"地址簇"确定.
协议簇: 表示一个协议集合. 例如IPv4(PF_INET). IPv6(PF_INET6). ATM(PF_ATMSVC)等.
用协议簇IPv4(PF_INET)和服务类型SOCK_STREAM就指定了TCP/IP协议.
地址簇: 定义地址的格式. 格式包括地址的字节数.包含的字段数.字段类型.顺序等.
例如IPv4的地址簇AF_INET.
2.3 使用 Socket API的糟糕之处
容易出错. 过于复杂. 不可移植.
相关文章推荐
- [C++] socket - 6 [API互斥事件对象实现线程同步]
- ACE基本APISOCKET编程TCPACE_INET_Addr类ACE_SOCK_Acceptor类ACE_SOCK_Connector类ACE_SOCK_Stream
- Socket概述及TCP/IP的C++实现
- c++ 接口api socket
- C++ socket编程基础一(概念和常用API)
- C++网络(三)用Socket API建立简易TCP服务端、客户端
- [C++] socket - 5 [API事件对象实现线程同步]
- 26 API-网络编程(网络概述,Socket通信机制,UDP协议发送和接收数据,TCP协议发送和接收数据)
- C/C++ SOCKET API
- java socket解析和发送二进制报文工具(附java和C++转化问题)
- java Socket API 详解 .没有实例只能自己取理解了
- Java Transaction API概述
- C++中string类型用于send函数-socket发送zifu
- c/c++ 调用api操作mysql
- paip.uapi 获取网络url内容html 的方法java php ahk c++ python总结.
- Socket接口是TCP/IP网络的API-C语言版
- C++ Network Programming, Vol. 1: Mastering Complexity with ACE and Patterns
- 向google学习良好的C++代码风格-(1)概述
- ACE工具概述
- socket,UDP发送ARP包(c++实现)