| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> 菜鸟成长记录【2】:网络编程 tcp_socket通信 -> 正文阅读 |
|
[网络协议]菜鸟成长记录【2】:网络编程 tcp_socket通信 |
SOCKET:在计算机通信领域,socket 被翻译为“套接字”即(端口+地址),它是计算机之间进行通信的一种约定或一种方式。通过 socket这种约定,一台计算机可以接收其他计算机的数据,也可以向其他计算机发送数据 TCP:传输控制协议(TCP,Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议。 TCP_socket通信流程:服务端:
客户端:
以下是我理解的通信流程:就像两个人间的线上交流,前提是双方都先要注册自己的账号(创建socket),而建立交流时总会有被动或主动的一方; 被动方就像时服务器:你可以说他内向又渴望交流,注册号账号后就把自己的账号和自己公开信息结合了(绑定),在没有事做时他就在那等别人加他好友(监听),他看到后同意就建立了连接(接收连接请求),最后聊完了就下线(关闭socket); 主动方就像客户端:想要和被动那方说什么时,就需要查找搜索对方的账号(设置对方IP和端口),点击添加好友(发起连接请求)这一步当然不一定100%通过,也许就会出现什么特殊情况,对方同意后就可以正常交流,聊完下线(关闭socket)。 流程实现:1.服务端查看自己的ip地址在命令行输入ifconfig ?这个inet就是服务端需要绑定的ip。 2.需要用到的相关函数创建socket
发起连接
绑定
?监听
接受连接
发送/接受数据(因为Linux下一切皆文件,使用write/read也可以)
3.服务端的建立
4.客户端的建立
?5.数据通信服务端
客户端
?运行结果 ? 我这是自己和自己玩,若要和别人的主机通信仅需修改封装好的tcp_socket()的参数即可。 以上若有错误,请大佬指出。 |
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 22:50:09- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |