套接字

套接字是支持TCP/IP协议的网络通信的基本操作单元。可以将套接字看作不同主机间的进程进行双向通信的端点,它构成单个主机内及整个网络间的编程界面。套接字通常和同一个域中的套接字交换数据,各种进程使用这个相同的域互相之间用Internet协议进行通信。

套接字有两种不同的类型:流套接字和数据报套接字。要通过互联网进行通信,至少需要一对套接字,其中一个运行于客户端,称之为ClientSocket,另一个运行于服务器端,称之为ServerSocket

根据连接启动的方式以及本地套接字要连接的目标,套接字之间的连接过程可以分为三个步骤:服务器监听,客户端请求,连接确认。

u 服务器监听:指服务器端套接字并不定位具体的客户端套接字,而是处于等待连接的状态,实时监控网络状态。
u 客户端请求:指由客户端的套接字提出连接请求,要连接的目标是服务器端的套接字。
u 连接确认:指当服务器端套接字监听到或接收到客户端套接字的连接请求时,它就响应客户端套接字的请求,建立一个新的线程,把服务器端套接字的信息发给客户端,一旦客户端确认了此信息,连接即可建立。


套接字处理数据两种基本模式:同步套接字和异步套接字。

u 同步套接字

     其特点是在通过Socket进行连接、接收、发送操作时,客户机或服务器在接收到对方响应前会处于阻塞状态。它适用于数据处理不太多的场合。

u 异步套接字

     在通过Socket进行连接、接收、发送操作时,客户机或服务器不会处于阻塞方式,而是利用callback机制进行连接、接收和发送处理,这样就可以在调用发送或接收的方法后直接返回,并继续执行下面的程序。 


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值