硬件协议栈基础


套接字 (socket) 是一个通信端的标识符,由IP地址和端口号组成,例如<192.168.10.31:194>.作用是提供一个数据传输通道。
套接字主要有3种类型。
1)流式socket(SOCKET_STREAM):提供可靠地、面向连接的通信流。使用TCP协议,从而保证数据的正确性。
2)数据包socket(SOCKET_DGRAM):提供一种无连接的服务,使用DUP协议,通过相互独立的数据报传输,协议不保证传输的可靠性和数据的原始顺序。
3)原始socket:原始socket允许对底层协议如IP进行直接访问,功能强大,用户可以通过该socket开发自己的协议。


这里写图片描述

三次握手

这里写图片描述

四次挥手

这里写图片描述

对于W5500里面的部分源码贴出:

/**
*@brief   This Socket function initialize the channel in perticular mode, 
                    and set the port and wait for W5200 done it.
            建立一个socket
*@param     s: socket number.
*@param     protocol: The socket to chose.
*@param     port:The port to bind.
*@param     flag: Set some bit of MR,such as **< No Delayed Ack(TCP) flag.
*@return  1 for sucess else 0.
*/

这里写图片描述

/**
*@brief     This function established  the connection for the channel in Active (client) mode.
                    This function waits for the untill the connection is established.
*@param     s: socket number.
*@param     addr: The server IP address to connect
*@param     port: The server IP port to connect
*@return  1 for success else 0.
*/

这里写图片描述
这里写图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值