当前位置: 首页 > news >正文

筑巢做网站怎么样网站建设建站在线建站

筑巢做网站怎么样,网站建设建站在线建站,新沂做网站,卖烟的网购平台文章目录 🎄TCP通信程序⭐打印字符串✨中文乱码问题🎈解决方法 🌺TCP三次握手🌺TCP四次挥手🛸其他 🎊专栏【网络编程】 🍔喜欢的诗句:更喜岷山千里雪 三军过后尽开颜。 &#x1f386…

文章目录

  • 🎄TCP通信程序
    • ⭐打印字符串
      • ✨中文乱码问题
        • 🎈解决方法
  • 🌺TCP三次握手
  • 🌺TCP四次挥手
  • 🛸其他

🎊专栏【网络编程】
🍔喜欢的诗句:更喜岷山千里雪 三军过后尽开颜。
🎆音乐分享【如愿】
🥰欢迎并且感谢大家指出我的问题

在这里插入图片描述

TCP(Transmission Control Protocol)是传输控制协议,是一种面向连接的、可靠的、基于字节流的传输层通信协议。在程序员的网络编程中,TCP可以说是使用最频繁的网络协议之一。那么TCP通信程序是如何工作的呢?本文将详细介绍TCP通信的程序示例、三次握手、四次挥手等过程,帮助大家深入理解TCP通信的内在运行机制。

TCP通信需要客户端与服务端建立连接后才能相互发送数据。在Java中,通过Socket类代表一个连接端点,通过ServerSocket类提供服务端口。TCP在传输数据之前,需要完成三次握手建立连接。当一方完成发送数据后,还需要进行四次挥手释放连接。这些都是TCP可靠传输的重要保证。

本文首先给出了使用Socket和ServerSocket的TCP通信示例程序,实现了客户端发送字符串,服务端打印输出的功能。这样可以看到TCP编程的基本流程和步骤。然后针对出现的中文乱码问题,给出了使用转换流InputStreamReader的解决方案。

接下来详细介绍了TCP三次握手的过程,这是为了让两端确认对方与自己都处于可通信状态,防止已失效连接请求报文段突然又传到了服务端,产生错误。最后又解释了TCP四次挥手的目的,这是为了让服务端明确知道客户端不会再发送数据了,可以安全关闭连接。

如果你想深入理解TCP的工作流程,那么本文提供的通信程序示例以及握手挥手过程的详细剖析将会对你有所帮助。最后,文中还提供了TCP与UDP的区别表格,可以更清楚对比这两种网络协议。

🎄TCP通信程序

TCP通信协议是一种可靠的网络协议,它在通信的两端各建立一个Socket对象
通信之前要保证连接已经建立
通过Socket产生IO流来进行网络通信
在这里插入图片描述

⭐打印字符串

import java.io.IOException;
import java.io.OutputStream;
import java.net.Socket;public class Client {public static void main(String[] args) throws IOException {//TCP协议,发送数据//创建Socket对象Socket socket=new Socket("192.168.31.13",10001);//从连接通道中获取输出流OutputStream os=socket.getOutputStream();//写出数据os.write("aaa".getBytes());//释放资源os.close();socket.close();}
}

Server.java


import java.io.IOException;
import java.io.InputStream;
import java.net.ServerSocket;
import java.net.Socket;public class Server {public static void main(String[] args) throws IOException {//接收数据//创建对象ServerSocket ss=new ServerSocket(10001);//监听客户端的连接Socket socket=ss.accept();//从连接通道中获取输入流读取数据InputStream is=socket.getInputStream();int b;while((b=is.read())!=-1){System.out.println((char) b);}//释放资源socket.close();ss.close();}
}

先运行Server.java,再运行Client.java
发现打印出了字符串
在这里插入图片描述

✨中文乱码问题

在这里插入图片描述

我们发现,如果打印的字符串不是英文,而是中文,会产生乱码
这是为什么呢

因为我们没有指定编码表,那么就会使用平台默认的编码表UTF-8,在这种条件下,一个中文是3个字节,那么4个中文就是12个字节,此时12个字节全部都传到了服务器
服务器在读的时候,是一个字节一个字节的的读的,但是3个字节才是一个中文,那么每次转换的是1/3个中文,所以会出现乱码

🎈解决方法

使用一个转换流

在这里插入图片描述

🌺TCP三次握手

在这里插入图片描述

🌺TCP四次挥手

在这里插入图片描述

🛸其他

在这里插入图片描述
通过学习TCP通信程序的代码示例,并理解三次握手与四次挥手的必要性,可以加深对TCP协议机制的认识,帮助我们更好地运用TCP解决传输需求。
在这里插入图片描述

http://www.hkea.cn/news/125926/

相关文章:

  • 到哪里找人做网站优化seo培训班
  • 深圳网站开发哪家专业搜索到的相关信息
  • 湖北武汉网站制作引擎搜索下载
  • 做网站登录的需求分析seo点击排名工具有用吗
  • 诸暨住房和城乡建设委员会网站怎么制作网站?
  • 昆明cms建站模板视频号排名优化帝搜软件
  • 商务咨询网站源码重庆网站建设哪家好
  • 建设部网站从何时可以查询工程师证深圳全网推广服务
  • 网页制作工具的选择与网站整体风格是有关系的友情链接论坛
  • 免费商会网站模板百度推广账号
  • 玄武模板网站制作品牌关键词排名点击软件网站
  • 网站title的写法微信软文怎么写
  • 设计企业网站流程磁力引擎
  • 橙色企业网站模板域名注册购买
  • 培训建设网站线上推广产品
  • 写作网站不屏蔽全网关键词指数查询
  • wordpress手机uiseo关键词的选择步骤
  • 自己制作网页的步骤windows优化大师在哪里
  • 黑龙江企业信息系统seo推广优化外包公司
  • wordpress+增加域名赣州网站seo
  • 政府门户网站建设思路怎样优化网络
  • 厦门个人网站建设百度账户代运营
  • 企业网站开发注意什么企业网站官网
  • 网站建设开发合同书关键词怎么找出来
  • 常州微信网站建设附子seo
  • 上海网站seo招聘十种营销方式
  • 农产品网络营销模式百度推广怎么优化
  • 公司网站维护如何做分录自己搭建一个网站
  • 做期货浏览哪些网站网络优化工程师前景如何
  • 垂直b2b电子商务网站有哪些google搜索排名优化