Kcp

golang网络编程笔记

网络编程类型

我们一般提到的网络编程类型有两种:tcp和udp,都属于网络传输层协议支持下的协议,而且在目前也是网络编程中最基础的。这其中具体说来有有个socket的概念,tcp和udp都是协议,而socket就是一个具体的实现了,所以有tcp socket和udpsocket。golang是自身就带有网络库的net的,使用非常方便。 同时我这里还会简单介绍一下另外一种协议,用户态的,基于udp的,但是具有tcp的连接回话管理,重传确认等机制-kcp。 网络编程主要的目的是进行通信,所以就会涉及到至少2个端的通信,一般我们把这两个端分为服务端和客户端,服务端主要是起一个服务,实际上也就是监听一个服务端口,接受客户端的连接请求,并且接受请求命令进行服务功能的执行。客户端主要就是向服务端发起连接请求连接到服务端,并且先服务端发送命令字,让服务端执行服务。所以在后面的介绍中就会有一个客户端程序和服务端程序。

继续阅读