我们再说TCP的时候经常会说他是有连接的,可靠的,面向数据流的三个特点,今天我们就来介绍一下TCP的有连接的。
先说一下什么是面向连接的,我们在创建TCP连接的时候和UDP不一样,我们得先向客户端发送请求,然后客户端回复我们一个确认应答和请求,之后我们再给客户端发送确认应答,也就是经典的三次握手,这时候双方才可以发送数据,UDP不管你有没有连接,上来就直接发,这就好比我们TCP用的是手机来发短信,当小蓝想给小红聊天的时候就给小红发短信,小红在吗我是小蓝我想和你聊天,这时候小蓝不是这条短信有没有发到,他不知道自己手机是不是欠费了,他就得等着小红的回应,当小红收到信息之后,会明白,哦小蓝想和我聊天,那我的手机收短信没问题的,我回复他一个:我是小红我收到了,你能看到我的消息吗?这时候小红清楚自己能够收短信,但是不知道自己能不能发啊,等会小蓝看到了小红的回信,这时候小蓝清楚了,我的发送功能没问题,发送出去了,小红看到了,并且我的接受也没问题,小红给我的回信我也接受到了,但是小红现在还在等着啊,他不知道自己是不是成功发出来消息了,这时候小蓝再回复小红一个,没问题我能看到你的消息,当小红收到的时候那这时候双方都能清楚自己收发功能都没问题,这时候双方就可以开始正式发送消息了。
这就我们TCP链接的过程,把小蓝变成客户端,小红变成服务端就可以了。这个过程也就是我们TCP大名鼎鼎的三次握手。