![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
计算机网络
文章平均质量分 63
z啵唧啵唧
vx:_cherishxs
展开
-
TCP粘包问题
TCP的粘包问题我们大家都知道TCP是基于字节流的形式来传输数据的,这就会发生一个重要的问题就是粘包问题下图先来看看什么是TCP的粘包问题那为啥UDP不会存在粘包问题呢?那怎么解决TCP的粘包问题呢?要解决TCP的粘包问题需要设计合理的应用层协议来解决方式一:给应用层设定"结束符" / “分割符”方式二:设定包的长度,约定每个应用层数据报的前4个字节,存储数据报的长度~总之一句话记好就行确定好数据之间的分割界限即可。......原创 2022-06-28 08:29:50 · 106 阅读 · 0 评论 -
UDP协议相关知识
UDP协议相关知识基本特征无连接,不可靠、面向数据报、全双工无连接,socket创建好了之后,就可以尝试读写数据面向数据报:读写数据都是以DatagramPacket为单位进行的全双工:一个socket既能读又能写理解UDP协议报文格式拼装包头的过程也就是所谓的封装校验和网络中传输的数据本质上就是一些比特流 0 / 1 比特流这些比特流是通过光信号、电信号来进行表示如果在传输的过程当中,受到一些干扰就容易出现一些"比特翻转的情况(0 -> 1 1 ->原创 2022-05-11 01:48:14 · 171 阅读 · 0 评论 -
基于TCP的简单服务器
基于Tcp的简单服务器UDP协议无连接类似于发微信TCP协议有链接类似于打电话所以基于TCP的服务器先要到内核中获取一个TCP连接,UDP不需要获取连接TCP的连接管理是由操作系统的内核来管理的,客户端和服务器建立连接的过程中,完全由内核来进行负责。负责程序的代码感知不到TCP的来连接管理需要先描述在组织描述:通信的五元组组织:使用一个阻塞队列来组织若干个连接对象代码中调用这个accept方法就是从阻塞队列当中获取一个链接对象(在应用程序中的化身就是Socket对象)后续数据读写都原创 2022-05-11 01:12:34 · 282 阅读 · 0 评论 -
一个简单的UDP回显服务器
一个简单的UDP回显服务器客户端给服务器发送一个字符串,服务器把这个字符串原封不动的返回(回显到服务器echo server) 相当于服务器开发当中的"hello world".通过整个代码书写过程了解UDP的协议格式和发送数据的基本原理服务端代码package com.zb.network.test;import java.io.IOException;import java.net.DatagramPacket;import java.net.DatagramSocket;impo原创 2022-05-09 17:16:40 · 509 阅读 · 0 评论 -
关于TCP的三次握手和四次挥手及其衍生问题
文章目录关于TCP的三次握手和四次挥手及其衍生问题TCP三次握手过程图解示意四次挥手挥手过程图解示意相关衍生问题为啥子需要最后一次的确认(三次握手次数不能减少的原因)为什么我握手是三次,挥手是四次为什么客户端最后要等待一段时间才断开连接关于TCP的三次握手和四次挥手及其衍生问题TCP三次握手过程第一次握手,客户端向服务器发送请求连接的报文,SYN=1,序列号seq=x;表示自己想要和服务器之间建立TCP连接,此时客户端就会进入连接发送的状态。第二次握手,服务器接收到客户端发送来的连接请求报文,先原创 2022-03-15 16:43:25 · 4594 阅读 · 0 评论 -
TCP/IP五层体系结构
文章目录TCP的五层结构体系各层含义以及封装的内容第五层:应用层第四层:传输层传输层重要的两个协议第三层:网络层第二层:数据链路层第一层:物理层补充TCP的五层结构体系TCP的五层结构体系分成了从上到下分别是:应用层、传输层、网络层、数据链路层、物理层各层含义以及封装的内容第五层:应用层应用层是体系结构中最高的一层,他通过接口直接为用户的进程进行服务。这一层上所设计的常用的协议:SMTP邮件传输协议、Http万维网络协议、FTP文件传输协议等第四层:传输层传输层是将应用层传输下来的原创 2022-03-15 02:45:01 · 9233 阅读 · 0 评论