码迷,mamicode.com
首页 > 其他好文 > 详细

网络编程 socket

时间:2018-09-15 12:19:55      阅读:181      评论:0      收藏:0      [点我收藏+]

标签:send   https   imp   粘包   地址   多少   python3.4   bytes   connect   

sever端

import socket 

sk=socket.socket()  实例化一个对象

sk.bind((‘ip地址‘,端口号))

sk.listen(数字)    python3.4以上不用加数字

conn,addr=sk.accept()      阻塞

conn.send(bytes类型的内容)

msg=conn.recv(数字)

conn.close()

sk.close()

 

client端

import socket

sk=socket.socket()

sk.connect((‘服务端的ip’,服务端的端口))

sk.recv()

sk.send()

sk.close()

 

OSI五层协议

应用层  http、https 协议  

传输层  TCP、UDP协议 四层路由器,四层交换机

网络层  IP协议  路由器,三层交换机

数据链路层 Arp协议  网桥,网卡,以太网交换机

物理层  中继器,集线器,双绞线

 

粘包现象:

合包现象:数据很短,时间间隔短

拆包现象:大(文件)数据会发生拆分,不会一次性全部发送到对方,对方在接受的时候很有可能没办法一次性接收到所有信息

那么没有接收完的信息很有可能和后面的信息黏在了一起

粘包现象只发生在TCP 协议中,tcp协议的传输是流式传输,每条信息与信息之间是没有边界的

udp协议是不会发生粘包现象的,适合短数据的发送,不建议发送过长的数据,否则会增大数据丢失的几率

粘包现象的本质是:收发数据的边界不清晰,接收数据这一端不知道要接收数据的长度是多少

 

网络编程 socket

标签:send   https   imp   粘包   地址   多少   python3.4   bytes   connect   

原文地址:https://www.cnblogs.com/a3002/p/9641762.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!