标签:ip协议 部分 nbsp 设计模式 顺序 文件的 设计 完成 通信
Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口后面,让Socket去组织数据,以符合指定的协议。
基于文件类型的套接字家族
套接字家族的名字:AF_UNIX----基于文件
unix一切皆文件,基于文件的套接字调用的就是底层的文件系统来取数据,两个套接字进程运行在同一机器,可以通过访问同一个文件系统间接完成通信
基于网络类型的套接字家族
套接字家族的名字:AF_INET----基于网络
(还有AF_INET6被用于ipv6,还有一些其他的地址家族,不过,他们要么是只用于某个平台,要么就是已经被废弃,或者是很少被使用,或者是根本没有实现,所有地址家族中,AF_INET是使用最广泛的一个,python支持很多种地址家族,但是由于我们只关心网络编程,所以大部分时候我么只使用AF_INET)
面向连接的套接字:通信前需要先建立一个连接。----虚拟电路/流套接字
面向连接的通信提供序列化的,可靠的喝不重复的数据交付,而没有记录边界。实现面向连接类型的主要协议是传输控制协议TCP,socket使用socket.SOCK.STREAM作为套接字类型。
无连接的套接字: 通信前不需要建立连接。
在数据传输过程中并无法保证它的顺序性,可靠性和重复性。数据报保存了记录边界。实现无连接类型的主要是用户数据报协议UDP,socket使用SOCK.DGRAM作为套接字类型。
标签:ip协议 部分 nbsp 设计模式 顺序 文件的 设计 完成 通信
原文地址:http://www.cnblogs.com/mona524/p/7147530.html