socket
Socket是什么
Socket,网络应用程序接口,是应用层到传送层的接口。简单点就是用户进程,与系统内核的接口。
Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。
在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口后面,对用户来说,一组简单的接口就是全部,让Socket去组织数据,以符合指定的协议。
socket位置
TCP/IP模型,应用层形成用户进程,下面3层一般作为操作系统的内核。
* 应用层
* 传送层
* 网络层
* 数据链路层
socket基本流程
套接字的两种类型
一种是”Stream Sockets”(流格式),另外一种是”Datagram Sockets”(数据包格式)。我们以后谈到它们的时候也会用到”SOCK_STREAM” 和 “SOCK_DGRAM”。数据报套接字有时也叫“无连接套接字”(如果你确实要连接的时候可以用connect()。)
流式套接字