前面的博客 基于 socket 手写一个 TCP 服务端及客户端 写过一个简单的 TCP 服务端客户端,没有对代码结构进行任何设计,仅仅是实现了相关功能,用于加深对 socket 编程的认识。 这次我们对整个代码结构进行一下优化,使其模块化,易扩展,成为一个简单意义上的“框架”。 对于 Socket ...
分类:
其他好文 时间:
2020-03-22 20:06:46
阅读次数:
116
背景 复习 socket 编程的时候发现了以前没有留意到的 2个函数: 和 ...
分类:
其他好文 时间:
2020-03-21 16:25:37
阅读次数:
69
Java Socket编程基础及深入讲解 Socket是Java网络编程的基础,了解还是有好处的, 这篇文章主要讲解Socket的基础编程。Socket用在哪呢,主要用在进程间,网络间通信。本篇比较长,特别做了个目录: 一、Socket通信基本示例 二、消息通信优化 2.1 双向通信,发送消息并接受 ...
分类:
编程语言 时间:
2020-03-21 14:41:44
阅读次数:
61
进行 Socket 编程时经常会碰到 TCP 的粘包与半包问题,很多时候我们选用 netty 等框架而不直接采用原生的 Socket 编程也是因为 netty 帮我们将该类传输过程中可能出现的问题屏蔽掉了,使我们可以抽出更多精力来关注功能的实现,而不是挣扎在处理这些底层问题上。但尽管如此,我们也必须 ...
分类:
其他好文 时间:
2020-03-21 12:55:44
阅读次数:
52
Winsock库对Windows的Socket编程有很好的支持,它提供了所有Socket相关的API函数。常用的Winsock库有1和2两个版本,流行应用程序使用的是Winsock2版本。其对应的动态链接库是WS2_32.dll,使用时需要包含Winsock2.h头文件,并要导入WS2_32.lib ...
一图看完本文 一、 计算机网络体系结构分层 计算机网络体系结构分层 计算机网络体系结构分层 不难看出,TCP/IP 与 OSI 在分层模块上稍有区别。OSI 参考模型注重“通信协议必要的功能是什么”,而 TCP/IP 则更强调“在计算机上实现协议应该开发哪种程序”。 二、 TCP/IP 基础 1. ...
分类:
其他好文 时间:
2020-03-09 17:34:13
阅读次数:
48
@[toc] 服务器端 (1) 创建ServerSocket对象,绑定监听端口; (2) 通过accept()方法监听客户端请求; (3) 连接建立后,通过输入流读取客户端发送的请求信息; (4) 通过输出流向客户端发送相应信息; (5) 关闭响应资源。 客户端 (1) 创建Socket对象,指明需 ...
分类:
其他好文 时间:
2020-03-08 17:31:44
阅读次数:
74
TCP通信粘包问题分析和解决(全) 在socket网络程序中,TCP和UDP分别是面向连接和非面向连接的。因此TCP的socket编程,收发两端(客户端和服务器端)都要有成对的socket,因此,发送端为了将多个发往接收端的包,更有效的发到对方,使用了优化方法(Nagle算法),将多次间隔较小、数据 ...
分类:
其他好文 时间:
2020-03-02 18:50:55
阅读次数:
99
一、基于TCP的socket 二、基于UDP的socket TCP协议与UDP协议 TCP(transport control protocol,传输控制协议)是面向连接的,面向流的,提供高可靠性服务。收发两端(客户端和服务器端)都要有一一成对的socket,因此,发送端为了将多个发往接收端的包,更 ...
分类:
编程语言 时间:
2020-02-26 21:13:33
阅读次数:
73
五层模型和数据格式 各层作用和协议 应用层: 作用 :通过应用进程间的交互去完成指定的网络应用。 协议 :应用进程间的通信和交互规则。 三大协议 :DNS(域名系统),HTTP协议(万维网),SMTP(电子邮件) 报文 :应用层交互的数据单元。 运输层: 作用 :负责不同主机进程间通信,并且为这样的 ...
分类:
其他好文 时间:
2020-02-25 09:20:45
阅读次数:
77