在 python 中有两个不同层级的网络编程API,分别如下所示:
- 基于
socket
的网络编程,较低层,采用 TCP/UDP 协议; - 基于
url
的网络编程,较高层,采用HTTP/HTTPS协议。
如果想要系统的研究网络知识,需要掌握的知识包括网络结构,TCP/IP协议,IP地址,端口等相关信息,这些肯定不是咱们滚雪球第四季的相关内容,作为扩展知识,可以自行研究。
TCP与UDP Socket 网络编程
TCP/IP协议的传输层存在两种协议:
- TCP:传输控制协议,该协议面向连接,比较可靠,连接一旦建立,一直占用;
- UDP:用户数据报协议,无连接状态,可能丢包,但是传输快,实时性高。
接下来我们就从这两个协议入手,学习网络编程。
python 中是通过 socket
模块实现相关数据交换的,其中 Socket
成为套接字,程序通过套接字向网络发出请求和响应网络请求,从而使主机之间可以通信。