python网络编程:基于socket( )进行网络数据传输时需要注意的几点记录

套接字是操作系统针对TCP/IP通往上层的接口,而python的socket模块则提供了对操作系统套接字操作的接口。

在网络上的两台主机建立了TCP连接以后,就要开始传数据,TCP协议能够确保数据流可靠地传输到对端,但当我们在TCP协议层上编写上层协议或者应用程序进行数据传输的时候,需要解决一些TCP没有解决的问题:

1、传输文本时,需要注意编解码问题;

2、传输二进制数据时(如图片等),需要注意大小端的问题;

3、无论是传输文本还是二进制数据,都需要解决如何判断数据从哪里开始和结束的问题,如果这个问题解决不好,还可能会引起死锁的问题。可以采用几个方案:封帧方式,如HTTP协议就采取了封帧方式;压缩方式,压缩方式除了能够压缩数据,还自带了定界符,让你能够正确的分离数据。

4、数据格式:python有pickle,通用的是XML和JSON。

你可能感兴趣的:(python网络编程:基于socket( )进行网络数据传输时需要注意的几点记录)