Berkeley套接字接口,一个应用程序接口(API),使用一个Internet套接字的概念,使主机间或者一台计算机上的进程间可以通讯。 它可以在很多不同的输入/输出设备和驱动之上运行,尽管这有赖于操作系统的具体实现。 接口实现用于TCP/IP协议,因此它是维持Internet的基本技术之一。 如今,所有的现代操作系统都有一些源于Berkeley套接字接口的实现,它已成为连接Internet的标准接口。
C#中有Socket类(命名空间:System.Net.Sockets)实现 Berkeley 套接字接口。
函数名称 | 函数简单描述 | 附加说明 |
---|---|---|
Socket | 使用指定的寻址方案、套接字类型和协议初始化Socket类的新实例 | Socket的构造函数 |
Bind | 将一个Socket绑定一个ip与端口的二元组上 | 常用于服务端侦听Socket的设置 |
Listen | 将Socket变为侦听状态,并设置连接队列的最大长度(一般为20或30) | 常用于服务端侦听Socket的设置 |
Connect | 与远程主机建立连接, 主机由 IP 地址(或主机名)和端口号指定。 | 一般用于客户端 |
Accept | 尝试从侦听套接字接收一个连接Socket | 一般用于服务端(阻塞方法) |
Send | 将数据发送到连接的Socket | |
Receive | 接收来自绑定的Socket的数据 | 阻塞方法 |
Select | 确定一个或多个套接字的状态 | |
RemoteEndPoint | 获取远程终结点的IP地址和端口号 | |
Close | 关闭Socket连接并释放所有关联的资源 | |
Shutdown | 禁用某Socket上的发送和接收 | |
SetSocketOption | 设置Socket选项 | |
Getsockopt | 返回Socket选项的值 |
|
详细介绍见官网:https://docs.microsoft.com/zh-cn/dotnet/api/system.net.sockets.socket?view=netframework-4.8
参考:https://blog.csdn.net/analogous_love/article/details/88720389