温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

vxworks中如何实现TCP

发布时间:2021-12-22 10:29:30 来源:亿速云 阅读:337 作者:小新 栏目:互联网科技

这篇文章主要为大家展示了“vxworks中如何实现TCP”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“vxworks中如何实现TCP”这篇文章吧。

TCP,全称应该是Transmission Control Protocol,一个面向连接的传输层协议,提供可靠的字节流传送。通信时,与UDP类似,采用的也是C/S模式,即启动一个Server,负责阻塞接收,其它的Client连接后发送数据。不过整个流程比UDP要复杂一些,传输效率也低一些

先看Client端,要简单一些

  • Client调用socket()打开一个Socket

vxworks中如何实现TCP

  • Client调用connect()连接到指定的Server

  • Client调用send()发送数据

vxworks中如何实现TCP

  • 最后调用close()关闭Socket 

而Server要复杂一些

  • Server调用socket()打开一个Socket

  • Server调用bind()指定Port等信息

  • Server调用listen()开始监听Client

  • Server调用accept()等待Client的接入

  • Server调用recv ()阻塞接收

  • 最后调用close()关闭Socket

Server为了支持多个Client的接入,可以多次调用accept();为了并行处理这多个Client,可以将每个Client的recv()放到单独的任务中

另外,Service也可以调用send(),Client也可以调用recv()
而且,Socket是一种虚拟IO,数据处理完毕后,双方需要调用close()关闭各自的Socket,还可以用read()代替recv(),用write()代替send()   
另外几个函数和数据结构如下,函数入参一般用的类型是sockaddr结构,而声明的变量一般要用sockaddr_in结构来指定Port和IP,其实它俩是一回事

vxworks中如何实现TCP

写个最简单的示例

Client如下

vxworks中如何实现TCP

以上是“vxworks中如何实现TCP”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI