什么是Socket?Socket是什么呢?
- 实际上Socket是对TCP/IP协议的封装,Socket本身并不是协议,而是一个调用接口(API),通过Socket,我们才能使用TCP/IP协议。
- Socket跟TCP/IP协议没有必然的联系。Socket则是对TCP/IP协议的封装和应用(程序员层面上)。
- Socket编程接口在设计的时候,就希望也能适应其他的网络协议。
- Socket的出现只是使程序员更方便地使用TCP/IP协议栈而已,是对TCP/IP协议的抽象,从而形成了我们知道的一些最基本的函数接口,比如create、 listen、connect、accept、send、read和write等等一些方法。
- TCP用主机的IP地址加上主机上的端口号作为TCP连接的端点,这种端点就叫做套接字(Socket)。
应用层、Socket抽象层、运输层、网络层、链路层的网络结构
socket是对TCP/IP协议的封装,它的出现只是使得程序员更方便地使用TCP/IP协议栈而已。
socket本身并不是协议,它是应用层与TCP/IP协议族通信的中间软件抽象层,是一组调用接口(TCP/IP网络的API函数)
而socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。

客户端与服务端通过Socket进行交互式的过程?
socket的大致流程如下:
服务器端先初始化socket,然后与端口绑定(bind),对端口进行监听(listen),调用accept阻塞,等待客户端连接。在这时如果有个客户端初始化一个socket,然后连接服务器(connect),如果连接成功,这时客户端与服务器端的连接就建立了。客户端发送数据请求,服务器端接收请求并处理请求,然后把回应数据发送给客户端,客户端读取数据,最后关闭连接,一次交互结束。

Socket是对TCP/IP协议的封装,它提供了一组API,使程序员能够更容易地使用TCP/IP协议栈。Socket编程接口不仅适用于TCP/IP,还考虑了其他网络协议的支持。本文介绍了Socket的基本概念,包括其与TCP/IP的关系、如何通过Socket进行网络通信以及客户端和服务端交互的基本过程。
2936

被折叠的 条评论
为什么被折叠?



