在internet上使用socket必须考虑网络的时滞效应
在internet上发送数据时有可能出现丢包与前后次序倒转等现象
因些在internet上发数据你必须考虑上述事情
同时socket的封包大小一般最大为4048字节
具体的实现过程一般是:
发送方按如下方式:
1、将有结构的数据转换成流形式
2、对流数据进行压缩
3、对压缩后的数据进行加密
4、对加密后的数据进行拆分(其中加密与拆分的先后次序可以颠倒)
5、对每个拆分包进行编号
6、为编号后的包添加前后定界符
7、按一定的速率向接收方发送
接收方则按相反方向处理
1、接收收到的数据
2、判断定界符,正确分离与连接单独的包
3、判断包的编号,正确交换倒置的顺序包,同时在一定时间内若某编号的包不到达表明已丢失则要求重发
4、去除定界符与包编号
5、还原拆分前的状态
6、解密数据
7、解压缩数据
8、将流格式还原成原格式数据