网络编程socket

43 篇文章 0 订阅

socket编程简述:

      它是基于TCP/IP协议,socket就是一个可以连通网络上不同计算机程序之间的管道,把一堆数据从管道的A端扔出去,则会从管道B端(要有序同时还可以从CDEF...端冒出来).管道的端口有两个因素来唯一确认,机及其的IP地址和程序的所使用的端口号.

  socket可以支持数据的发送和接收,他会定义一种称为套接字的变量,发送数据时首先创建套接字,然后使接字的sendto等方法对准某个IP/端口进行数据发送,接收端也首先创建套接字,然后将该套接字绑定到一个IP/端口上,所有发向此端口的数据会被该套接字的recv等函数独处.如同读取文件中的数据一样.



TCP/IPsocket提供三种类型套接字:流式套接字,数据报式套接字,原始式套接字.

客户端编程步骤:

1:加载套接字,创建套接字(WSAStartup()/socket())

2:向服务器发送链接请求(connect())

3:和服务器端进行通信(send()/recv())

4:关闭套接字,关闭加载的套接字库(closesocket()/WSACleanup())  


三次握手:

1.第一次握手:建立连接时,客户端发送同步序列到服务器,并进入发送状态,等待服务器确认

2.第二次握手:服务器收到同步序列,确认并同时自己也发送一个同步序列+确认标志,此时服务器进入接收状态

3.第三次握手:客户端收到服务器发送的包,并向服务器发送确认标志,随后链接成功

注意:是在链接成功后再进行数据传输

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值