TCP协议(Socket,ServerSocket)

TCP协议详解与Socket编程实践
本文介绍了TCP协议的特性,特别是其面向连接的性质和三次握手过程。通过Java的Socket和ServerSocket类展示了TCP连接的创建和数据传输,讨论了在实际编程中可能遇到的问题,如连接拒绝和数据发送完毕的标记。最后提到了TCP多线程实现文件上传的实践应用。

TCP协议

  • 传输控制协议(Transmission Control Protocol)
  • TCP协议是面向连接的通信协议,即传输数据之前,在发送端和接收端建立逻辑连接,然后再传输数据,它提供了两台计算机之间可靠无差错的数据传输。在TCP连接中必须要明确客户端与服务器端,由客户端向服务器发出连接请求,每次连接的创建都需要经过“三次握手

三次握手:TCP协议中,在发送数据的准备阶段,客户端与服务器之间的三次交互,以保证连接的可靠

  • 第1次握手,客户端向服务器发出连接请求,等待服务器确认
  • 第2次握手,服务器向客户端回送一个响应,通知客户端收到了连接请求
  • 第3次握手,客户端再次向服务器发送确认信息,确认连接

完成三次握手,建立连接后,客户端和服务器就可以开始进行数据传输了。由于这种面相连接的特性,TCP协议可以保证 数据传输的安全,所以应用十分广泛。例如上传文件,下载文件,浏览网页等。

废话少说,直接放客户端的代码

package com.wangLuo;

import java.io.IOException;
import java.io.OutputStream;
import java.net.Socket;

/**
 * @author 林高禄
 * @create 2020-06-01-10:24
 */
public class TCPClient {
    public static void main(String[] args) throws IOException {
        S
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

林高禄

你打不打赏,我都会一直写博客

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值