计算机网络:socket编程

概念

处于传输层,使用socket API传输报文。
两种传输层服务的socket类型:TCP(可靠的、字节流的服务)、UDP(不可靠服务);
使用一个整数表示。
socket编程基本就是create、listen、accept、send、read、write等几个基本操作。
实现socket通信必须的五种信息:连接使用的协议,本地主机的IP地址,本地进程的协议端口,远地主机的IP地址,远地进程的协议端口。

TCP套接字编程:

  1. 服务器首先运行,等待连接建立
    服务器进程必须先处于运行状态,创建欢迎socket,和本地端口捆绑,在欢迎socket上阻塞式等待接收用户的连接
  2. 客户端主动和服务器建立连接
    创建客户端本地套接字(隐式捆绑到本地port),指定服务器进程的IP地址和端口号,与服务器进程连接
  3. 当与客户端连接请求到来时
    服务器接收来自用户端的请求,解除阻塞式等待,返回一个新的socket(与欢迎socket不一样),与客户端通信。允许服务器与多个客户端通信。使用源IP和源端口来区分不同的客户端。
  4. 连接API调用有效时,客户端与服务器建立了TCP连接。
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容