一、TCP网络编程
TCP 网络编程是目前网络开发中的主要编程方式之一。TCP协议处于网络传输层中,实现了一个应用程序到另外一个应用程序的数据传输,要进行嵌入式网络方面的开发是离不开TCP协议编程的。
二、TCP网络编程流程
TCP网络编程的流程包含服务器模式和客户端模式两种。服务器模式创建一个服务程序,等待客户端用户的连接,接收到用户的连接请求后,根据用户的请求进行处理;客户端模式则根据目的服务器的地址和端口进行连接,向服务器发送请求并对服务器的响应进行数据处理。
1、TCP服务器端编程模式
TCP服务器端模式下编程主要分为以下流程:建立套接字socket()、绑定套接字端口bind()、设置服务器的监听连接listen()、接收客户端连接 accept()、接收和发送数据read()/write()和recv()/send()等、关闭套接字close()。下图为该TCP服务器端模式的流程图。
2、TCP客户端编程模式
TCP客户端模式下编程主要分为以下流程:建立套接字 socket()、连接服务器connect()、接收和发送数据read()/write()和recv()/send()等、关闭套接字close()。下图为该TCP客户端模式的流程图。
3、TCP 服务器端与客户端通信过程
TCP服务器端与客户端进行数据交换要进行三次握手才可以完成 TCP 连接,之后才开始进行数据交换,客户端的读数据过程对应服务器端的写数据过程,客户端的写数据过程对应服务器端的读数据过程。当两者完成数据读写后,关闭套接字连接,结束服务器端与客户端之间的通信。该过程如下图所示:
下篇预告——> 创建网络套接字函数socket()
“今天的挥汗如雨,是为了明天的挥金如土!” 今天开始,以后的每一天小亮都会在自己的个人博客里发布至少一篇博文记录自己在学习Linux C++服务端方面的成长,记录自己的一点一滴。
加油吧!少年,曾经的 “试玉要烧三日满,辨材须待七年期”,现如今已剩下不到四个月,是该兑现诺言的时候了。