TCP的服务器和客户端的通信

本文介绍了TCP服务器和客户端通信的原理,包括网络编程目标、OSI模型与TCP/IP协议体系结构、UDP与TCP的区别以及预备知识如socket、IP地址、端口号和字节序。详细阐述了TCP的三次握手和四次挥手过程,并讲解了TCP服务器和客户端的关键函数,如socket、bind、listen、accept、recv和send等。
摘要由CSDN通过智能技术生成

1.网络编程的目标

实现不同主机之间的进程间通信(服务器和客户端的通信),并且一个服务器可以处理很多个客户端的请求。

2.OSI模型与TCP/IP协议体系结构

协议:通信双方所遵守的通信规则。

网络体系结构:指网络的层次结构和每层所使用的协议的集合。

网络采用分而治之的方法设计,将网络的功能划分为不同的模块、以分层的形式有机组合在一起。每层实现不同的功能,其内部实现方法对外部其他层次来说是透明的。每层向上层提供服务,同时使用下层提供的服务。

两类非常重要的体系结构:OSI与TCP/IP

OSI与TCP/IP参考模型的对应关系

                                               OSI模型                       TCP/IP协议

 3.UDP和TCP协议

共同点:同为传输层协议

不同点:TCP:有连接,可靠

              UDP:无连接,不保证可靠

有连接:正式数据传输之前确保双方都能收和发

无连接:直接传输数据,不管是否收和发

 可靠:即数据无误、数据无丢失、数据无失序、数据无重复到达的通信。

不保证可靠:有可能会丢失、会出错、会失序或者重复到达。

TCP有连接:

三次握手:

第一次握手:客户端给服务器发送连接请求(客户端能发)

第二次握手:服务器给客户端应答同时给客户端发送连接请求(服务器能收,服务器能发)

第三次握手:客户端给服务器应答(客户端能收)

四次挥手:

第一次挥手:客户端向服务器发送断开连接请求(客户端不发了)

第二次挥手:服务器应答(服务器不收了)

第三次挥手:服务器向客户端发送断开连接请求(服务器不发了)

第四次挥手:客户端应答(客户端不收了)

适用场合:TCP适合于对传输质量要求较高,以及传输大量数据的通信,比如登录、文件的传输等

UCP适合于对传输速度要求较高,以及小尺寸数据的通信,比如视频会议等

4.预备知识

1、socket

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值