socket是什么意思?socket通信原理分析
socket是什么意思?socket通信原理分析socket是什么意思
Socket的中文翻译过来就是“套接字” 。套接字是什么 , 我们先来看看它的英文含义:插座 。
Socket就像一个电话插座 , 负责连通两端的电话 , 进行点对点通信 , 让电话可以进行通信 , 端口就像插座上的孔 , 端口不能同时被其他进程占用 。而我们建立连接就像把插头插在这个插座上 , 创建一个Socket实例开始监听后 , 这个电话插座就时刻监听着消息的传入 , 谁拨通我这个“IP地址和端口” , 我就接通谁 。
实际上 , Socket是在应用层和传输层之间的一个抽象层 , 它把TCP/IP层复杂的操作抽象为几个简单的接口 , 供应用层调用实现进程在网络中的通信 。Socket起源于UNIX , 在Unix一切皆文件的思想下 , 进程间通信就被冠名为文件描述符(file desciptor) , Socket是一种“打开—读/写—关闭”模式的实现 , 服务器和客户端各自维护一个“文件” , 在建立连接打开后 , 可以向文件写入内容供对方读取或者读取对方内容 , 通讯结束时关闭文件 。
另外我们经常说到的Socket所在位置如下图:

文章插图

文章插图

文章插图

文章插图

文章插图
- 某个应用进程调用close()主动关闭 , 发送一个FIN;
- 另一端接收到FIN后被动执行关闭 , 并发送ACK确认;
- 之后被动执行关闭的应用进程调用close()关闭Socket , 并也发送一个FIN;
- 接收到这个FIN的一端向另一端ACK确认 。
- 鸽子党什么意思
- 12mis含义是什么
- 医学endo什么意思
- 10h是什么意思
- 核数是什么意思
- 12个月花歌谣是什么
- 14点30分是什么时辰
- x和xs外观区别是什么
- 26朵玫瑰花代表什么意思
- 时间太瘦,指缝太宽什么意思
