套接字编程

先决条件:具备基本的网络知识。

2.1 需要学习的内容:从黑盒到代码

计算机网络常常被简化为通过线路连接的盒子,但实际的编码部分却被忽略了。然而,网络编程并非易事。假设存在一个具有两个方法(发送数据和接收数据)的应用程序编程接口(API)。那么,你还需要了解些什么呢?

源代码仓库在文章末尾

TCP字节流和协议
人们常常将计算机网络想象成对等体之间交换 “消息” 的过程。但最常用的协议——TCP,实际上并不产生消息。它产生的是一个连续的字节流,字节流内部没有边界。解释这个字节流是应用层协议的工作——即理解字节流的规则,包括如何将其分割成消息。

将字节流分割成消息比你想象的要棘手,尤其是在事件循环中。这和解析某些文件格式不一样。

扫描二维码关注微信公众号,回复密码,即可获取密码

阅读剩余
THE END